代码之家  ›  专栏  ›  技术社区  ›  alexcepoi

WPF windows窗体主机键盘事件

  •  3
  • alexcepoi  · 技术社区  · 16 年前

    这可能是一个简单的问题,但我一直找不到一个快速的答案。

    我有一个 具有 Windows窗体控件 托管GeckoFX组件(其实并不重要)。

    如果我想从整个WPF应用程序窗口(甚至在Windows窗体控件内)捕获事件呢? 我尝试过处理KeyDown事件和PreviewKeyDown事件,但没有效果。

    1 回复  |  直到 16 年前
        1
  •  1
  •   Community Mohan Dere    9 年前

    即使窗体上的KeyDown也应该适用于非特殊键(如箭头键)。使用PreviewKeyDown捕获这些,或者使用 this solution .

    private void webBrowser1_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) {
      if (DesignMode) return;
      if (!e.IsInputKey && e.Control && e.KeyCode == Keys.S) {
        DoStuff();
        return;
      }
    }