【问题标题】:What is the difference between WPF Command and Event in WPF?WPF中的WPF命令和事件有什么区别?
【发布时间】:2013-04-17 11:58:09
【问题描述】:

我只是在谷歌上搜索 WPF 命令和 WPF 中的事件之间的区别。我登陆了讨论正在进行的stackoverflow的下一页。

What is the difference between WPF Command and Event?

我只能从那里理解以下内容

  1. 命令可以写在业务层,而事件只能写在表示中
  2. 一个命令可以与多个控件关联,但事件只能与一个控件关联。

我说的对吗?它们之间还有其他区别吗?

【问题讨论】:

    标签: c# wpf mvvm conceptual


    【解决方案1】:

    你是对的,但只是部分。

    1. 主要担心的是事件不适合 进入MVVM 范式。简单地说事件很难插入,你不能绑定到事件处理程序。尽管如此,在表示层中使用命令是没有限制的,但这样做没有任何好处。您也可以在 BLL 中捕获控件并将事件处理程序附加到它,但这种情况更糟。
    2. 没有。事件处理程序也可以关联到 只要事件参数类型匹配,就可以使用不同的控件。

    命令还可以为您提供一些免费的好处。例如,如果CanExecute() 返回 false,则使用命令元素将被禁用。另一个好处是使用命令强制你遵循Separation of concerns 原则。

    【讨论】:

      【解决方案2】:

      事件是在 UI 中发生某些事情时发生的触发器。 命令是您的域模型处理此事件的方式。

      【讨论】:

        猜你喜欢
        • 2012-06-20
        • 2012-09-04
        • 1970-01-01
        • 1970-01-01
        • 2010-09-17
        • 2011-01-25
        • 2011-05-18
        • 2010-10-11
        • 2011-03-08
        相关资源
        最近更新 更多