我正在尝试使用另一个集合的属性集合来绑定到列表框。以下工作正常
<ListBox ItemsSource="{Binding Path=Locations[0].Buildings}">
问题是我需要一个动态索引和
<ListBox ItemsSource="{Binding Path=Locations[index].Buildings}">
其中index是我的viewmodel中的整数,不起作用。有谁知道如何将我的xaml中的索引与我的viewmodel中的属性相关联?
答案 0 :(得分:7)
其中index是我的viewmodel中的整数,不起作用。有谁知道如何将我的xaml中的索引与我的viewmodel中的属性相关联?
一个简单的选择是在ViewModel中公开CurrentLocation
属性,该属性实际上是Location[index]
。然后你可以直接绑定它。
答案 1 :(得分:4)
绑定中的绑定是不可能的,所以在XAML中你不能绑定到“index”。
一个。 Chris Moser's方法,您可以创建绑定到“index”的DependencyProperty在RegisterAttached处理程序上指定更改侦听器并在那里完成工作。
湾使用转换器。您可以提供index作为ConverterParameter
℃。绑定到POCO财产。 POCO属性需要由更换器发出的INotifyPropertyChanged