【发布时间】:2015-09-11 08:52:44
【问题描述】:
这个问题与MVVM项目结构有关。
为了在 ListView 中显示数据,我使用 DataTemplate。 ListView 的 ItemsSource 是 ObservableCollection(of Person)。到目前为止没有什么特别的。
但是在DataTemplate中我想在一个ComboBox中显示每个Person的State属性,其中显示的是实际值,用户可以选择另一个State。 State来自States,即ObservableCollection(of State)。
为了显示所有状态,我需要将 DataContext 绑定到 ViewModel 的“顶层”。但是我如何再次归结为个人,这在 DataTemplate 中显示?还是我需要另一种方法来解决这个问题?
在 XAML 中我有这个:
<ComboBox DataContext="{Binding DataContext, ElementName=pageRoot}" ItemsSource="{Binding States}" DisplayMemberPath="Description" SelectedValue="{Binding ??????}" SelectedValuePath="ID" />
我的问题是:我需要设置什么才能正确绑定 SelectedValue 以便它在组合框的文本字段中显示每个人的实际状态?
【问题讨论】:
标签: vb.net mvvm combobox datacontext selectedvalue