【发布时间】:2011-02-21 17:42:43
【问题描述】:
使用 MVVM,一种类型的 ViewModel 包含它们作为字段表示的模型。
所以我确实有一个 CompanyModel 和一个 CompanyViewModel,其中有一个 CompanyModel 实例。
这个 CompanyModel 有一个属于它的 Divisions 集合。所以 CompanyModel 有一个 List(或一些集合类)。
现在 CompanyViewModel 希望将这些部门表示为 ObservableCollection<DivisionViewModel>;您可以在 CompanyViewModel 中添加新的部门。
确保 ObservableCollection 和 Models 集合保持同步的最佳方法是什么?所以当我添加一个新的 DivisionViewModel 并保存时,它会自动将其模型保存到 CompanyModel 的List<Division>?
我有更多像这样的父/子关系的类,所以我希望我可以在 AbstractViewModel 类中重用或实现一些东西。
注意:我的 ViewModel 实现了 IEditableObject
【问题讨论】:
-
我会使用 INotifyCollectionChanged 事件。但实际上它取决于一项任务。如果您想从服务接收模型并保存它,那么同步没有意义。
标签: wpf collections mvvm observablecollection