Как сделать так, чтобы itemtemplate знал о содержащем его шаблоне?
Я хочу, чтобы этот эллипс получил свои координаты из соответствующей модели BallViewModel и использовал их для определения своего местоположения внутри холста. Список шаров связан сList<BallVM>
в модели mainview и, таким образом, я выбрал itemsControl, который имеет панель холста.
Правильный ли этот подход?
Если я попытаюсь привязать к X и Y внутри stylecontainer, то это не относится к определенному шару.
Независимо от того, что я установил в свойствах Canvas.bottom или canvas.left, эллипс всегда вверху слева.
<Grid>
<ItemsControl ItemsSource="{Binding Balls}" Background="red">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas MouseMove="Canvas_MouseMove" Background="Blue"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate DataType="{x:Type VM:BallVM}">
<Ellipse Canvas.Bottom="{Binding Y}" Canvas.Left="{Binding X}" Width="100" Height="100" Fill="Red"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>