如何判断Pressed键是Underscore还是Minus? C#

时间:2016-05-07 10:34:49

标签: c# winforms keyboard-events

问题是对于下划线和负号,键值为189,键码为Keys.OemMinus。所以我无法检查按下的键是下划线还是下划线。请帮助。

private void Some_KeyDown(object sender, KeyEventArgs e)
{
       if(Pressed key is minus/dash)
       {
           MessageBox.Show("minus");
       }

       if(pressed key is underscore)
       {
          MessageBox.Show("underscore");
       }
}

1 个答案:

答案 0 :(得分:4)

如果这是一个WinForms项目,请使用KeyPress事件而不是KeyDown事件:

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if(e.KeyChar == '-')
    {
        MessageBox.Show("Minus");
    }
    if (e.KeyChar == '_')
    {
        MessageBox.Show("Underscore");
    }
}