在 XAML 中使用 ICommand
时,WPF 使用 CanExecute
方法来启用或禁用与命令关联的控件。但是,如果我从过程代码中调用 Execute
怎么办?我应该先检查 CanExecute
以确保命令可以执行,还是应该 Execute
为我处理此检查?
换句话说,我应该这样做吗:
if (someCommand.CanExecute(parameter, target))
someCommand.Execute(parameter, target);
或者只是这样:
someCommand.Execute(parameter, target);
最佳答案
良好的风格会决定你应该做前者,首先检查 CanExecute。这将加强适当的分解和实现的一致性。此外,如果您确实想要使用绑定(bind)到按钮的此命令,它将按预期工作。
关于c# - 在从过程代码调用 Execute 之前,我应该检查 ICommand 的 CanExecute 方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6943076/