当我们使用MVVM时,是否可以在WPF命令内部进行回调?

时间:2016-05-01 13:31:52

标签: wpf mvvm callback command

我想知道如果我在命令执行方法中调用一个逻辑来调用通过参数传递给它的回调方法,我是否违反了MVVM模式?

例如:

public void MyCommandExecute(object arg)
{
if(arg is System.Action)
   {
        (arg as System.Action)(); //this action will do any logic about the view
   }
}

1 个答案:

答案 0 :(得分:2)

实际上MVVM正在分离业务逻辑和设计逻辑。我们主要使用视图模型来定义属性和所有的绑定数据。可以在视图本身中定义直接视图相关代码。比如说:你已经在视图中定义了一个关闭的按钮,你希望你的窗口在用户点击时关闭。这可以在视图本身中定义,而不是使用viewmodel。所以两种方式都是正确的。回调是可能的。您可以在视图中直接执行此操作。这就是我想说的。