我可以确定KeyEventArg是字母还是数字?

And*_*ndr 12 c# event-handling keyeventargs winforms

有没有办法确定一个键是否是字母/数字(A-Z,0-9)KeyEventArgs?或者我必须自己制作?我用e.KeyCode找到了一种方法,是准确的吗?

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))
Run Code Online (Sandbox Code Playgroud)

adr*_*nks 25

您可以在事件args char.IsLetterOrDigit()上使用该方法KeyCode:

bool isLetterOrDigit = char.IsLetterOrDigit((char) keyEventArgs.KeyCode);
Run Code Online (Sandbox Code Playgroud)


小智 8

在WPF?使用PreviewTextInput或TextInput事件而不是KeyDown