У меня есть одна коллекция, в которой содержится сама коллекция. Теперь я хочу пройти через коллекцию в wpf. Я пытаюсь привязать свойство цвета второй коллекции к свойству зависимости первой коллекции. Но до сих пор я не нашел способ привязать его должным образом. В случае привязки к видимости Я нашел обход, связав свойство видимости макета холста во втором элементе ItemsPanelTemplate с желаемым свойством.Вложенные ItemControls - привязка к верхнему управлению
Вот некоторые кусок кода, который представляет мою ситуацию:
<ItemsControl x:Name="Itemcntrl10" ItemsSource="{Binding Collection1}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<ItemsControl x:Name="Itemcntrl12" ItemsSource="{Binding Collection2}" >
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas Visibility="{Binding Visibility, Converter={StaticResource BooleanToVisibilityConverter}}" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Line X1="{Binding X}" Y1="{Binding Y}"
X2="{Binding old.X}" Y2="{Binding old.Y}"
StrokeThickness="{Binding Path=DataContext.StrokeThickness, ElementName=ThisMainWindow}"
>
<Line.Stroke>
<SolidColorBrush Color="Black" />
</Line.Stroke>
</Line>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Любые идеи, как получить это делать? Я думал о ElementBinding для верхнего элемента ItemsControl, но это тоже не решило мою проблему.
Большое спасибо за этот быстрый ответ! :) – dabuntu