Isletter на элементе управления DataGrid событие keydown
Я пытаюсь разбить пользовательский ввод на событие KeyDown в DataGrid, выяснив, является ли его ввод буквой или цифрой.
Метод, который я использую в данный момент, работает причудливо. Во-первых, IsDigit никогда не происходит и явно не работает. Во-вторых, островок работает, но только на некоторых буквах (W,Z,X, V и Y). Должен быть более всеобъемлющий способ сделать это, поскольку это явно не работает для меня.
Что я уже пробовал:
Это метод, который я использую до сих пор;
private void OnDataGridKeyDown(object sender, KeyEventArgs e) { if (char.IsLetter(Convert.ToChar(e.Key))) { MessageBox.Show("Letter"); } if (char.IsDigit(Convert.ToChar(e.Key))) { MessageBox.Show("Number"); } }
Richard MacCutchan
Convert.ToChar
не работает на ключевых значениях. Вам также необходимо ознакомиться с документацией для KeyEventArgs
, который не перечисляет свойство с именем Key
.
Спасибо Гриффу за то, что он меня поправил.
OriginalGriff
Версия WPF делает это - и DataGrid является элементом управления WPF.
Richard MacCutchan
Будь ты проклят, Microsoft.