3

RoutedUICommandを実装するRoutedCommandクラス内でコマンドを処理します。これは、CanExecuteと必要に応じてExecuteをチェックすることで、コマンドをブロックまたはオーバーライドするのに役立ちます。EditingCommand、ApplicationCommandなどをオーバーライドできます。処理すらできないコマンドの1つは、Ctr+Spacebarです。それはMediaCommandまたは私が見つけることができない他のいくつかのタイプですか?どこかで取り扱われていると思いますので、コントロールできません。

4

2 に答える 2

2

独自のカスタム コマンドを作成することも、定義済みのコマンドに新しいジェスチャーを追加することもできます。

public Window1()
    {
        InitializeComponent();
        ApplicationCommands.Find.InputGestures.Add(new KeyGesture(Key.Space, ModifierKeys.Control));
        CommandBinding commandBinding = new CommandBinding(ApplicationCommands.Find, myCommandHandler);
        this.CommandBindings.Add(commandBinding);
    }

    private void myCommandHandler(object sender, ExecutedRoutedEventArgs args)
    {
        MessageBox.Show("Command invoked!");
    }
于 2010-04-09T15:44:58.833 に答える
0

私は WPF コマンドを使用した経験があまりありませんが、Ctrl と Space キー用の独自のカスタム コマンドを作成してみてください。

このチュートリアルを参照してください: http://www.switchonthecode.com/tutorials/wpf-tutorial-command-bindings-and-custom-commands

于 2009-11-25T23:31:04.183 に答える