複数のWindowsパターンでアプリケーションレベルでRoutedCommandを起動する方法は?

StackOverflow https://stackoverflow.com/questions/3191143

  •  02-10-2019
  •  | 
  •  

質問

アプリケーションに複数のウィンドウがあります。たとえば、Window1、Window2、Window3です。

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

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

役に立ちましたか?

解決

CommandManager.RegisterClassCommandBindingを使用して、すべてのウィンドウアプリケーションワイドにハンドラーを接続できます。これは、アプリケーションの残りの部分で動作し続けるため、通常はapp.xaml.csに入れることは理にかなっていますが、どこにでも置くことができます。

CommandManager.RegisterClassCommandBinding(typeof(Window), new CommandBinding(ApplicationCommands.Cut, CutExecuted));
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top