Search code examples
c#winformsevent-handlingkeyeventargs

Can I determine if a KeyEventArg is an letter or number?


Is there a way to determine if a key is letter/number (A-Z,0-9) in the KeyEventArgs? Or do I have to make it myself? I found a way with e.KeyCode, is that accurate?

if(((e.KeyCode >= Keys.A       && e.KeyCode <= Keys.Z )
 || (e.KeyCode >= Keys.D0      && e.KeyCode <= Keys.D9 )
 || (e.KeyCode >= Keys.NumPad0 && e.KeyCode <= Keys.NumPad9))

Solution

  • You can use the char.IsLetterOrDigit() method on the KeyCode of the event args:

    bool isLetterOrDigit = char.IsLetterOrDigit((char) keyEventArgs.KeyCode);