繁体   English   中英

WPF MVVM - 刷新 Treeview

[英]WPF MVVM - Refresh Treeview

我在 WPF MVVM 中创建了一个 Treeview(项目使用 MVVM Light)。

当我将数据添加到 Treeview 的 DataTemplate 时,我想重新加载整个 treeview。 为此,我从我的数据输入视图模型向我的 treeview 视图 model 发送一条消息。

虽然收到了消息,但树并没有刷新。 我再次在每个节点上调用 LoadChildren,并且也使用了 RaisePropertyChanged,但数据没有得到更新。

TreeView绑定到ViewModel中的分层集合,它有一个属性名称,例如TreeViewData 假设您的ViewModel实现INotifyPropertyChanged ,只需为属性TreeViewData调用PropertyChanged处理程序。 这将完全刷新TreeView

我的回答是基于您使用 Mvvm light 的事实,因为您没有提供代码,我只会 state 显而易见,它可能会解决您的问题。

您的视图模型是否实现了 ViewModelBase 接口? (实现 INotifiedPropertyChanged)

我从未使用过 TreeViews,但假设它使用集合作为其数据模板,则无论何时添加/删除项目以及项目更改时,都必须在集合上调用 RaisePropertyChanged。 仅在集合的“集合”中调用 RaisePropertyChanged 是不够的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM