我有一个关闭和加载事件的窗口。
我正在使用MVVM实现,因此希望将这些事件与另一个类中的命令绑定
我有一个名为shellcommand的委托命令类:
public class ShellCommand : ICommand
{
private readonly Action _action;
public ShellCommand(Action action)
{
_action = action;
}
public void Execute(object Parameter)
{
_action();
}
public bool CanExecute(object Parameter)
{
return true;
}
#pragma warning disable 67
public event EventHandler CanExecuteChanged;
#pragma warning restore 67
}
然后我随之创建一个命令和方法:
public ShellCommand CloseCommand
{
get { return new ShellCommand(OnClosing); }
}
private void OnClosing()
{
然后绑定到窗口xaml中的Closing事件:
Closing="{Binding CloseCommand}"
这就是我在MVVM中设置任何命令绑定的方法,并且似乎有效,我不确定为什么窗口的事件绑定存在差异。
在运行时我得到一个例外:
如何在MVVM中向窗口事件添加绑定?