-1

所以我为 alt 和其他按钮设置了快捷方式,以便将文本插入textbox. 但是,每当我点击 alt 时,它就会选择我的menuStrip并选择一个 menuItem,其中的字母最接近我的键盘按下的那个字母。

我试过了:

if (e.KeyCode == Keys.Alt)
{
    handled = true;
}

如本教程所示,但它给我一个错误,说处理不存在。

4

2 回答 2

3
Control_KeyDown(object sender, KeyEventArgs e) 
    {
     if (e.Alt)
       {
            e.Handled = false;
       }
    }

尝试使用 KeyDown 事件。

于 2013-10-12T12:46:53.227 回答
0

先处理 KeyDown 事件:

        KeyDown += MainWindow_KeyDown;

在此事件处理程序中,当按下其中一个 ALT 键时,将第二个参数的 Handled 属性设置为 true。

    void MainWindow_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.System && (e.SystemKey == Key.LeftAlt || e.SystemKey == Key.RightAlt))
        {
            e.Handled = true;
        }
    }
于 2013-10-14T11:36:16.480 回答