避免c# winform键盘快捷键提示

本文关键字:快捷键 提示 键盘 winform 避免 | 更新日期: 2023-09-27 18:10:51

我正在使用Visual Studio 2012在c#中制作Winform应用程序的键盘快捷键。我的捷径很管用。但是它发出烦人的哔哔声。

我根据许多线程添加了e.Handled = true;e.SuppressKeyPress = true;。但它不工作,我的窗体卡住了。

我怎样才能避免这种情况?

private void textBoxSearch_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Down)
        {
            do stuff
        }
        else if (e.KeyCode == Keys.Enter)
        {
            //do stuff
        }
        e.Handled = true;
        e.SuppressKeyPress = true;
    }

我也需要一个解决方案。

 protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
    {
        if (keyData == (Keys.Control | Keys.F))
        {
            //do stuff
        }
        else if (keyData == (Keys.Control | Keys.G)) {
            //do stuff
        }
        return base.ProcessCmdKey(ref msg, keyData);
    }

避免c# winform键盘快捷键提示

你在KeyDown事件中有什么应该工作。当我复制你的代码时,SupressKeyPress = true停止了我的ding。

在ProcessCmdKey事件中,您需要这样做:

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
    if (keyData == (Keys.Control | Keys.F))
    {
        //do stuff
        return;
    }
    else if (keyData == (Keys.Control | Keys.G)) {
        //do stuff
        return;
    }
    return base.ProcessCmdKey(ref msg, keyData);
}