总是大写......(C#winforms)

时间:2010-09-09 01:59:14

标签: c# key-events

我的表单中有TextBox,我在其上添加了此事件:

private void txtValue_KeyDown(object sender, KeyEventArgs e)
        {
            MessageBox.Show(e.KeyData.ToString());
        }

但是即使我在textBox中输入了一个小写字母,它也总是打印出大写字母。请看下面的图片:

my form

我应该如何获得正确的显示?感谢...

2 个答案:

答案 0 :(得分:3)

如果您处理KeyPress事件,则可以检查KeyChar的{​​{1}}属性以获取正确的案例。

答案 1 :(得分:3)

KeyDownKeyUp使用KeyEventArgs,它通过Keys属性公开KeyData枚举。枚举没有小写字母值的表示。

http://msdn.microsoft.com/en-us/library/system.windows.forms.keys.aspx

KeyPress事件允许您通过KeyPressEventArgs.KeyChar获取按下的键的实际字符。

private void txtValue_KeyPress(object sender, KeyPressEventArgs e)
{
    MessageBox.Show(e.KeyChar.ToString());
}