您好我为ViewModel获得了一个dataTemplate。
在这个DataTemplate中,我得到了一个ListView绑定到模板的集合,在那里我不能设置集合中项目的属性。
该属性的可用设置位于原始ViewModel中的另一个集合中,但我很难绑定它。
<DataTemplate DataType="{x:Type ViewModel}">
<!-- Some irrelevant property bindings -->
<ListView ItemsSource="{Binding Path=TheCollection}">
<ListView.ItemTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource SOMEAPPROPRIATERELATIVESOURCE},
Path=AvailablePropertiesCollection}" SelectedItem="{Binding Path=TheProperty}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
是否有一些很好的方法可以绑定到顶级DataTemplate的项目?
答案 0 :(得分:0)
我相信你会想要使用:
ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type ListView}},
Path=DataContext.AvailablePropertiesCollection}"
这将绑定到ListView的数据上下文中的AvailablePropertiesCollection。