【问题标题】:How can I capture keys on a WinForms application when the application is in focus?当应用程序处于焦点时,如何捕获 WinForms 应用程序上的键?
【发布时间】:2016-09-16 07:25:17
【问题描述】:

如何在 WinForms 应用程序处于焦点时捕获键?

我曾尝试使用 Form_KeyDownForm_KeyUp 事件,但它们并没有按照我希望的方式工作。

【问题讨论】:

    标签: c# .net winforms


    【解决方案1】:

    KeyPreview 设置为真

    这是一个示例 OnKeyDown 覆盖您的表单,它会吃掉击键并防止它被传播到其他事件:

    protected override void OnKeyDown(KeyEventArgs e)
    {
        e.SuppressKeyPress = true; // do this to 'eat' the keystroke
        base.OnKeyDown(e);
    }
    

    【讨论】:

    • 你的意思是吃,它不会传播到其他事件,对吧?
    • 是的,它不会将其传递给任何其他事件。
    猜你喜欢
    • 1970-01-01
    • 2016-03-28
    • 2013-08-24
    • 2011-01-28
    • 2020-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-11
    相关资源
    最近更新 更多