如何在MVVM WPF中构建列表窗口和编辑窗口场景?

时间:2013-11-20 16:51:50

标签: c# wpf mvvm model

在momement中,我在列表窗口的每一行上都有一个Edit按钮,它在列表视图模型上调用EditRow命令。这会实例化一个编辑窗口,它会处理它自己的视图模型。

这一切都很好,但如何将编辑窗口中的更改传播回列表?我是否公开了编辑窗口调用的UpdateRow命令,或类似的东西?

然后,我该如何处理错误,以及确定或取消结果?

1 个答案:

答案 0 :(得分:0)

您使用ObservableCollection并且该集合中的对象具有INotifyPropertyChanged接口,因此当您在编辑窗口中编辑作为ObservableCollection成员的对象时,更改会自动显示在你的清单......

这也将在编辑窗口中处理错误和取消,因为如果您在编辑窗口中取消编辑或处理错误,您在编辑窗口中对该对象执行的任何操作将再次自动传播回列表,因为您正在处理来自同一ObservableCollection的同一个对象。

如果您打算在访问ObservableCollection中包含的对象时使用线程,那么使用可在codeproject上找到的ObservableCollectionMt可能是个好主意。