3

アプリケーションに複数のウィンドウ (window1、window2、window3 など) があります。

1 つの RoutedCommand (KeyGesture F11 を使用) が wi​​ndow1 にバインドされました。window2 が入力フォーカスを持っているときに F11 を押してそのルーティングされたコマンドを起動する方法は?

WinForm アプリケーションでは MessageFilter を使用して F11 を検出しますが、WPF ではどうすればよいですか?

4

1 に答える 1

2

CommandManager.RegisterClassCommandBindingを使用して、ハンドラーをすべてのWindowアプリケーション全体に接続できます。これは、アプリケーションの実行の残りの部分で引き続き機能するため、通常はApp.xaml.csに配置するのが理にかなっていますが、どこにでも配置できます。

CommandManager.RegisterClassCommandBinding(typeof(Window), new CommandBinding(ApplicationCommands.Cut, CutExecuted));
于 2010-07-07T01:39:00.090 に答える