使用命令模型的主要好处是什么?

时间:2012-10-10 23:22:02

标签: wpf prism

我想知道在WPF中使用命令模型的主要好处是什么。我来自Windows Form和MFC,我总是使用在事件处理程序中编写代码。

1 个答案:

答案 0 :(得分:2)

这些命令可以轻松管理应该启用哪个UI元素(通过CanExecute接口的ICommand成员)。

在我看来,您可以在多个地方插入相同的命令,或者甚至以一种在架构上更清洁的方式从另一个命令调用命令,而不是事件。

使用命令,您可以编写与真实用户点击UI时相近的测试代码(再次使用命令的CanExecute成员,您可以轻松查看command A及其相关控制按计划对command B

的执行作出反应

在维护方面,当您放入之前未处理过的项目时,更容易理解应用程序在读取标记<Button Name="SomeButton" Command="{Binding SaveClientDataCommand} />而不是<Button Name="SomeButton" OnClick="SomeButton_Click" />时所执行的操作。

如果您使用MVVM pattern,则可以将逻辑从View移动到ViewModel。

很多这些要点都是关于个人偏好和意见的,但通常情况下,有几种方法可以做同样的事情。轮子还没有被重新发明,并且可能没有任何东西可以用基于事件的编程不可能的命令做,但我觉得它更干净,更容易维护。