4

私はTextBox自分のフォームにを持っていて、それにこのイベントを追加しました:

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

ただし、textBoxに小文字を入力した場合でも、常に大文字が出力されます。下の画像をご覧ください。

私のフォーム

どうすれば正しいディスプレイを取得できますか?ありがとう...

4

2 に答える 2

4

KeyDownプロパティを介して列挙型を公開するをKeyUp使用します。列挙型には、小文字のアルファベット値の表現はありません。KeyEventArgsKeysKeyData

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());
} 
于 2010-09-09T02:09:08.643 に答える
3

代わりにイベントを処理する場合は、のプロパティをKeyPress調べて正しいケースを取得できます。KeyCharKeyPressEventArgs

于 2010-09-09T02:03:50.240 に答える