0

我对 MVVM 很陌生,我很好奇是否可以将所有 UI 特定的东西排除在 ViewModel 之外,从而使我的 viewmodel 可以跨项目移植?例如,假设我想稍后将我的应用程序从 windows phone 8 移植到 windows 8。我可以轻松地拖动我的视图模型和模型,然后设计一个连接到视图模型的新视图。如果是这样,为了使我的视图模型尽可能便携,我应该注意哪些做法?

4

1 回答 1

0

您可以将它们构建成自己的程序集,然后在多个项目中重复使用这些程序集,而不是拖动您的模型和虚拟机。

通过实现IPropertyNotifyChanged. 通过这种方式,您的 VM 的属性可以检查它们是否正在更改,并可以通知订阅者PropertyChanged某些已更改的事件。这样,您的视图可以订阅PropertyChanged对象上的事件,并且可以在需要更新 UI 以反映对象的一个​​或多个属性的更改值时采取行动。

请务必阅读文档末尾的示例,该IPropertyNotifyChanged示例说明了它是如何工作的。

于 2013-03-08T11:08:22.957 回答