【发布时间】:2014-11-05 10:13:22
【问题描述】:
场景:
MyControl类型的用户控件列表:
public List<MyControl> Controls { get; set; }
public MyControl SelectedControl { get; set; }
带有ItemsSource 的ComboBox 链接到Controls 属性:
<ComboBox ItemsSource="{Binding Path=Controls}" SelectedItem="{Binding Path=SelectedControl}" DisplayMemberPath="HeaderTitle" >
问题是ComboBox 正确显示了项目,但是当我选择一个项目时,它没有出现在ComboBox 中。为什么?
PS:HeaderTitle 是 DependencyProperty 的 MyControl 类型。
【问题讨论】:
-
您是否尝试从代码中设置它?因为在这种情况下,您需要实现 INotifyPropertyChanged 并在设置 SelectedControl 属性时引发 PropertyChanged 事件
-
我正在使用 MVVM 模式。 INotifyPropertyChanged 实现得很好。