-1

我已将命令绑定到功能区控件上的按钮。按钮上的 CanExecute 方法按预期调用,但单击按钮不会导致调用 Execute 方法。将属性设置为CanExecute-相关按钮已启用且可单击。CanExecutetrue

有没有其他人见过这种行为?如果是这样我该如何解决它!

编辑:

CommandBinding commandBinding = new CommandBinding(StaticCommands.ThisCommand, ThisCommandExecutedHandler, ThisCommandCanExecuteHandler);
CommandManager.RegisterClassCommandBinding(this.GetType(), commandBinding);
CommandBindingList.Add(commandBinding);

StaticCommands.ThisCommand是一个RoutedCommand输入手势为 的F5

不幸的是,我无法发布任何 xaml,因为所有内容都包含在另一个团队的库中。我假设现在是正确的。此外,使用与命令关联的键盘手势(按下F5)会导致调用执行方法。

没有抛出异常,输出窗口中没有消息,并且 snoop 显示正确绑定的所有内容。我真的很难过。

4

2 回答 2

2

如果参数类型不正确匹配,通常会发生这种情况......您是否绑定CommandParameter了一种类型并在 Command.Execute() 调用中接受不同类型的参数?

于 2011-10-10T16:57:32.527 回答
0

通过将 包裹RoutedCommandsRelayCommand. 我不知道为什么会这样,但假设其他团队的装配有问题。

于 2011-10-14T14:32:14.873 回答