Osk*_*kar 2 c# wpf routed-commands
RoutedUICommand从代码隐藏手动执行自定义时,如下所示:
MyCommands.MyCommand.Execute(parameter, target)
Run Code Online (Sandbox Code Playgroud)
我需要先调用CanExecute方法还是已经在Execute方法中完成了?
Bri*_*sio 10
不要假设使用Execute调用CanExecute.ICommand的接口并不意味着它在调用Execute时调用CanExecute,因此如果只在CanExecute为true时执行它很重要,那么只需自己检查即可.
另外,扫描RoutedUICommand的解压缩代码,我没有看到在Execute中检查CanExecute的任何地方.
确定何时调用Execute/CanExecute确实更有消费者的责任.