當在XAML中使用ICommand
時,WPF使用CanExecute
方法來啓用或禁用與該命令關聯的控件。但是如果我從程序代碼中調用Execute
怎麼辦?我應該首先檢查CanExecute
以確保該命令可以執行,或者應該Execute
負責此檢查嗎?在從程序代碼調用Execute之前,我應該檢查一個ICommand的CanExecute方法嗎?
換句話說,我應該這樣做:
if (someCommand.CanExecute(parameter, target))
someCommand.Execute(parameter, target);
或者只是這樣的:
someCommand.Execute(parameter, target);
爲什麼不使這部分Execute()? –