【发布时间】:2019-03-16 15:16:09
【问题描述】:
在启动时,我将 ObservableCollection 绑定到菜单:
Menu.ItemsSource = _manager.Selection;
此菜单正确显示集合中的所有对象。
现在我想更新集合并添加/删除其中的一些项目:
private void OnBoxClick(object sender, RoutedEventArgs e)
{
_manager.Selection = _manager.GetNewSelection();
PropertyChanged?.Invoke(this, new CollectionChangeEventArgs(CollectionChangeAction.Refresh, _manager.Selection));
}
public event CollectionChangeEventHandler PropertyChanged;
但 ui 仍然显示它之前的样子..
缺少什么?
【问题讨论】:
-
当您似乎从不添加或删除元素时,为什么它根本是 ObservableCollection?使用普通的
public List<Selection> Selections属性,该属性在设置时会触发 INotifyPropertyChanged 接口的 PropertyChanged 事件。
标签: c# wpf data-binding