如何将列表框绑定到位于ViewModel中的复杂类型中的集合?

时间:2011-09-12 00:15:15

标签: c# silverlight xaml data-binding mvvm

我的视图模型当前包含一个“SelectedClient”属性,该属性引用数据网格中选定的“客户端”对象。此选定的客户端属性包含一个名为“OfficeLocations”的属性,该属性基本上只是“OfficeLocation”对象的列表。

我正在尝试将列表框绑定到SelectedClients.OfficeLocations属性,如下所示:

<ListBox ItemsSource="{Binding SelectedClient.OfficeLocations}" />

但由于某种原因,ListBox始终显示为空白。再一次,在调试模式下,当我查看SelectedClient.OfficeLocations属性时,它确实包含数据。

我也尝试过类似的事情:

<ListBox ItemsSource="{Binding SelectedClient, Path=OfficeLocations}" />

无济于事。

任何想法都会非常感谢。谢谢!

1 个答案:

答案 0 :(得分:0)

啊,事实证明我试图用DataGrid.RowDetailsTemplate进行绑定,它已经将我的DataContext重写为SelectedItem ......意思是将我的绑定更改为:

 <ListBox ItemsSource="{Binding OfficeLocations, Mode=TwoWay}">

修正了问题!