0
我想要做的是有一個ItemsControl,我可以指定它的哪些項目是可見的。我爲ItemContainer創建了一個DataTemplate,但我不知道我綁定的元素的名稱,或者是「索引」,它將是它在列表中的哪個項目的數字表示。ItemsControl的項目展示者的屬性與其在列表中的位置相關聯?
<ItemsControl ItemsSource="{Binding Charts}"
x:Name="ItemsControl">
<ItemsControl.ItemTemplate>
<ItemContainerTemplate >
<ContentPresenter Content="{Binding}">
<ContentPresenter.Visibility>
<MultiBinding Converter="{StaticResource }">
<Binding ElementName=""
Path=""/>
<Binding Path="WhichAreVisible" />
</MultiBinding>
</ContentPresenter.Visibility>
</ContentPresenter>
</ItemContainerTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
編輯
按柯蕾曼的建議,我在列表中創建的對象的索引屬性和設置綁定到,但是當我把一個斷點在我轉換我看到的價值該綁定是DependancyProperty.UnsetValue數據上下文是該對象,對象上有一個屬性,爲什麼它看不到該屬性?
<ItemsControl ItemsSource="{Binding Charts}"
x:Name="ItemsControl">
<ItemsControl.ItemTemplate>
<ItemContainerTemplate >
<ContentPresenter Content="{Binding}">
<ContentPresenter.Visibility>
<MultiBinding Converter="{StaticResource Converter}">
<Binding Path="Index"/>
<Binding Path="WhichAreVisible" />
</MultiBinding>
</ContentPresenter.Visibility>
</ContentPresenter>
</ItemContainerTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
更好的ItemsSource屬性綁定到帶有過濾器的CollectionViewSource。 – Clemens
@Clemens如果我們可以這樣做,這將是一個更好的解決方案,但我們不能。 – kleineg
@Clemens你知道名字和路徑嗎? – kleineg