过去一个月我一直在学习 SL,现在我将注意力转向 UI 模式框架,例如 Caliburn.Micro 和 MVVM-Light。
我最近参加了一个关于在 WPF 和 SL 中使用 MVVM 模式的 session 。演示者使用简单的模式进行演示,没有任何 UI 框架——非常简单和直接。在演示中,他建议我们创建一个基础虚拟机,以便能够使用一些常见功能(由于时间原因无法获得更多细节 - 请随时澄清)。这是我想要使用 UI 模式框架的原因吗?
我的理解是,UI 模式框架有助于按照约定实现 MVVM 等模式,从而使开发人员不必担心这一点。否则我为什么要使用 UI 模式框架?
提前致谢!
最佳答案
有钱
对于业务应用程序 - 您的虚拟机很可能需要至少 2 个接口(interface):
INotifyPropertyChanged
和 INotifyDataErrorInfo
就像 Kieren 所说 - 实现 INotifyPropertyChanged 非常简单,只需几行代码。 INotifyDataErrorInfo
虽然多了一点,但也不错。
MVVM Light 是如此“轻”,我什至不确定这是什么意思:) 对我来说 - 理解 MVVM 的人不需要这个。您可以查看它的源代码以了解它的作用,因为您很可能需要扩展该基类。
Caliburn,OTOH,是一个基于约定的框架,它允许您在不指定“绑定(bind)”和其他类似魔法的情况下进行绑定(bind)。您需要决定是否真的需要它......
如果您正在处理一些繁重的事情,例如包含大量表单和内容的 LOB 应用程序 - 我强烈建议您研究 PRISM。它不是一个 MVVM 框架,而是构建复杂复合 UI 的框架。学习曲线会很陡峭,不像 MVVMLight :) 但它将涵盖您的业务应用程序中的大多数基础。
关于wpf - 为什么应该为 WPF、SL 和 WP7 使用 UI 模式框架?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7786608/