[Ctrl + A] Выделить весь текст в текстовом поле в C#
Часто пользователю удобно нажимать Ctrl + A, чтобы выделить весь текст в TextBox, который имеет фокус. Странно, что это не поведение по умолчанию для TextBox. Возможно, TextBox не обрабатывает Ctrl + A, поэтому программа может использовать Ctrl + A в качестве ускорителя.
В этом примере используется следующий обработчик событий KeyPress для выбора всего текста в текстовом поле, когда пользователь нажимает Ctrl + A в нем.
// В Ctrl + A выберите весь текст TextBox. private void CtrlA_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == Convert.ToChar(1)) { TextBox txt = sender as TextBox; txt.SelectAll(); e.Handled = true; } }
Если нажата комбинация клавиш Ctrl + A, код преобразует параметр отправителя в TextBox и вызывает метод SelectAll этого элемента, чтобы выбрать его текст. Код использует параметр отправителя вместо определенного текстового TextBox, поэтому вы можете использовать один и тот же обработчик событий для любого количества элементов управления TextBox.
После выбора текста код устанавливает для параметра e.Handled значение true, чтобы указать, что событие обработано, и программа не должна пытаться обработать его дальше. Если вы этого не сделаете, событие переходит к обработчику событий по умолчанию элемента управления TextBox, который подает звуковой сигнал, когда видит Ctrl + A.
Источник: