1
那么,在我们的应用程序中,这通常工作正常。但在某些时候,CanExecute方法都不会触发(即使我显式调用CommandManager.InvalidateRequerySuggested(),CanExecute方法也不会运行)。无论如何,尽管它们没有运行,但它们都被设置为false,因此绑定到CommandBinding的每个按钮,菜单项等都会被禁用,直到我单击MainWindow。CanExecute方法出现错误问题
现在,我怀疑另一个窗口造成这种情况,当我们做某个动作时,会弹出一个窗口,然后在下一个动作之后,所有按钮都会被禁用,而无需通过CanExecute方法。
有没有人看过这样的行为?任何有关如何解决这个问题的建议,我们都非常感谢。
谢谢。
你能发表一些代码吗?你使用了什么ICommand实现(DelegateCommand,RelayCommand ...)? – 2010-08-30 20:14:04
@Thomas Levesque修复了这个问题。这是一个焦点问题,不完全确定它为什么会发生这种情况,但删除它会使其正常工作。谢谢! – Carlo 2010-08-30 20:15:14
我也有类似的焦点和命令被禁用的问题......但我最终放弃了这个项目,所以我从来没有真的试图解决它 – 2010-08-30 20:48:21