,我用我通过下面的代码是指在我的XAML RoutedCommands:WPF自定义ICommand的执行情况和我的WPF UI的CanExecuteChanged事件
Command="viewModel:MessageListViewModel.DeleteMessagesCommand"
我不喜欢这样的静态链接到我的ViewModel类,我觉得这不是像你一样创建一个自定义的ICommand实现和使用类似下面的语法
Command="{Binding DeleteMessagesCommand}"
已经创建了一个,我发现我已经做了什么一个主要的缺点:RoutedCommands利用命令管理和(在某种程度上,这对我来说是完全不透明的)着火CommandManager.RequerySuggested事件,以便它们的CanExecute方法自动重新查询。至于我的自定义实现,CanExecute仅在启动时启动一次,之后再也不会启动。
有没有人有这个优雅的解决方案?
多谢这个伟大的和简洁的答复!奇迹般有效。你有没有机会知道何时以及为什么RequerySuggested被解雇? – 2010-09-22 11:35:18
不完全,但我似乎经常发生... – 2010-09-22 11:43:57
好的,再次感谢! – 2010-09-22 11:54:57