我想从代码中触发ICommand
(执行go);我该怎么做?
答案 0 :(得分:24)
尝试调用Execute
方法。
答案 1 :(得分:8)
假设someCommand
有commandArgs
:
if (someCommand.CanExecute(commandArgs))
{
someCommand.Execute(commandArgs);
}
答案 2 :(得分:4)
如果您使用RoutedUICommand
的{{3}}和Execute,请确保传入有效的目标,以便找到正确的CommandBinding
。
此外,如果您的命令的处理程序不直接修改View对象,请考虑使用Kent Boogaart的CanExecute。使用委托命令会将业务逻辑移动到ViewModel,这很好,如果您需要直接从代码执行命令并且您无法访问View(或者您可以从中冒泡的View对象),它们会特别方便到你的CommandBindings
)。
答案 3 :(得分:0)
请记住,如果您需要调用另一个内部组件事件,例如单击按钮,请参阅使用“执行”开始的方法(如按下按钮执行)。
另一个答案没问题,只使用执行......