コマンドをリボン コントロールのボタンにバインドしました。ボタンの CanExecute メソッドは期待どおりに呼び出されますが、ボタンをクリックしても Execute メソッドは呼び出されません。はプロパティを- 問題のボタンが有効でクリック可能に設定しますCanExecute
。CanExecute
true
他の誰かが以前にこの動作を見たことがありますか? もしそうなら、どうすればそれを修正できますか!
編集:
CommandBinding commandBinding = new CommandBinding(StaticCommands.ThisCommand, ThisCommandExecutedHandler, ThisCommandCanExecuteHandler);
CommandManager.RegisterClassCommandBinding(this.GetType(), commandBinding);
CommandBindingList.Add(commandBinding);
StaticCommands.ThisCommand
はRoutedCommand
の入力ジェスチャを持つ ですF5
。
残念ながら、すべてが別のチームのライブラリにまとめられているため、xaml を投稿できません。今のところそれが正しいと思います。また、コマンドに関連付けられたキーボード ジェスチャ ( を押すF5
) を使用すると、execute メソッドが呼び出されます。
例外はスローされず、出力ウィンドウにメッセージも表示されず、snoop はすべてが正しくバインドされていることを示します。私は本当に困惑しています。