3

これはおそらく簡単な質問ですが、私は簡単な答えを見つけることができませんでした。

GeckoFXコンポーネントをホストするWindowsフォームコントロールを備えたWPFアプリケーションがあります(実際には問題ではありません)。

私がやりたいのは、Windowsフォームコントロール内のキーダウンイベントをキャプチャし、特定のキーの組み合わせについてWPFコントロールのフォーカスを取得することです。また、WPFアプリケーションウィンドウ全体(Windowsフォームコントロール内でも)からイベントをキャプチャしたい場合はどうなりますか?KeyDownイベントとPreviewKeyDownイベントを処理しようとしましたが、役に立ちませんでした。

私が知りたいのは、これが可能かどうか、そしてこれをどのように行うべきかということです。必要に応じてコードを投稿できます。

4

1 に答える 1

1

フォーム上でもKeyDownは、特殊でないキー(矢印キーなど)に対して機能するはずです。PreviewKeyDownを使用してそれらをキャプチャするか、このソリューションを使用します。

特にGeckoWebBrowserの場合、PreviewKeyDownを使用する必要がありました。また、デザインモードで壊れないように線を追加しました。

private void webBrowser1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) {
  if (DesignMode) return;
  if (!e.IsInputKey && e.Control && e.KeyCode == Keys.S) {
    DoStuff();
    return;
  }
}
于 2010-11-10T15:20:35.723 に答える