2010-09-09 42 views
3

我有我的形式TextBox和我说就可以了这一事件:始终用大写字母...(C#的WinForms)

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

但它始终打印的字母大写,即使我进入文本框中的小写字母。请看下面的图片:

my form

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

+0

还应该有一个属性显示是否按下shift键 – 2010-09-09 02:55:53

回答

2

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

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()); 
} 
3

如果您处理KeyPress事件,您可以检查KeyChar属性KeyPressEventArgs以获取正确的大小写。

+0

谢谢............... – yonan2236 2010-09-09 02:24:13