
Событие KeyDown
•Содержит параметр KeyEventArgs, который имеет свойствa:
–KeyCode (указывающее на физическую клавишу клавиатуры, т.е. клавишу, обозначающую символ или функциональную клавишу);
–Modifiers (указывающее на специальные кнопки SHIFT, CTRL или ALT).
private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
•Для проверки нажатия специальных кнопок используется свойство Modifiers, а для проверки нажатия прочих клавиш – свойство Keys:
•Проверка нажатия клавиши F2:
if(e.KeyCode == Keys.F2) {}
• Проверка нажатия клавиши Alt:
if(e.Modifiers == Keys.Alt) {}
•Проверки нажатия клавиш можно комбинировать при помощи логических операций, как и любые другие условия:
•Проверка одновременного нажатия клавиш
Alt+C:
if(e.KeyCode == Keys.C && e.Modifiers == Keys.Alt) {}
•Проверка нахождения значения кода нажатой клавиши в диапазоне:
if (e.KeyCode > Keys.A && e.Modifiers < Keys.Z)
{}//если нажата клавиша с буквой (язык не имеет значения)

•Нажатие клавиши с цифрами с верхней части клавиатуры:
•Нажатие любой клавиши с цифрами:
Событие KeyPress
•Событие KeyPress позволяет проверить, какой символ введён с клавиатуры, а не то, какая кнопка нажата. Это удобно для обработки ввода значений с клавиатуры (например, когда нужно разрешить пользователю вводить только буквы или только цифры)
Событие KeyPress
•Содержит параметр KeyEventArgs, который имеет свойствo KeyChar.
•e.KeyChar – символ, введённый с клавиатуры. При нажатии одной и той же клавиши в эту переменную могут быть записаны разные значения (например, Q или Й)

Проверка введенных значений
•Символ, считанный с клавиатуры помещается в символьную переменную. Далее проверяется значение этой переменной:

Методы класса Char (для проверки
символьных значений) |
|
|
|
Метод |
Назначение |
|
|
IsControl(Char) |
Показывает, относится ли символ к числу |
|
управляющих символов |
|
|
IsDigit(Char) |
Показывает, является ли символ цифрой |
|
|
IsLetter(Char) |
Показывает, является ли символ буквой |
|
|
IsLetterOrDigit(Ch |
Показывает, является ли символ буквой или |
ar) |
цифрой |
|
|
IsLower(Char) |
Показывает, является ли символ буквой в |
|
нижнем регистре |
|
|
IsPunctuation(Cha |
Показывает, является ли символ знаком |
r) |
пунктуации |
|
|
IsUpper(Char) |
Показывает, является ли символ буквой в |
|
верхнем регистре |
|
|
Получение номеров символов по таблице ASCII
•Поскольку не все символы можно отследить при помощи стандартных методов класса Char, для проверки значений часто используются коды символов в таблице ASCII.
•ASCII – это специальная кодировка, которая присваивает всем используемым в компьютере символам соответствующий числовой код