0

有一个 ViewModel 由一些相关的对象(节点和行(,如何在 View 中显示(同步)这些 VM 并保持对象连接)组成。我使用一些 DataTemplate 将模型映射到视图,但每个对象都会同步(具有强大的绑定)到它的相关对象,但是我如何将这个 DataTemplate 生成的 UI 元素链接(和同步)在一起。我在这里从另一个角度描述问题: Sunchronizing view model and view

4

3 回答 3

0

为了使您的视图保持同步,您应该使用绑定,您的绑定源需要实现某些接口或依赖属性。对于您需要实现的集合INotifyCollectionChanged和您将使用的属性INotifyPropertyChanged,如果您更改源,您的视图也会更改。

于 2011-01-15T08:32:08.920 回答
0

除了实现 INotifyPropertyChanged 和使用 ICollectionChanged (ObservableCollection) 并绑定到视图之外,当您想要支持数据的编辑时,您可以考虑实现IEditableObject 。

此界面允许您撤消编辑操作。如果不实现 IEditableObject,您将需要在取消修改时返回数据源以将其重置为原始值。DataGrid 也支持该接口。

于 2011-01-15T08:39:27.993 回答
0

您可以使用中继命令逻辑同步 VM 和 View。

您可以在此处查看示例锻炼

使用 MVVM 在 WPF 中绑定窗口的“WindowState”属性

于 2011-01-15T09:14:04.660 回答