我有一個包含集合本身的集合。現在我想通過wpf中的兩個集合。 我正在嘗試將第二個Collection的Color屬性綁定到第一個Collection的Dependency Property。但直到現在,我還沒有找到一種方法來正確綁定它。 在Visibility-Binding的情況下,我通過將第二個ItemsPanelTemplate中的canvas佈局的Visibility-Property綁定到所需屬性來找到解決方法。嵌套的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