У меня есть форма winform, которая имеет типичные кнопки ОК и Отмена.
Кнопка ОК установлена в качестве кнопки по умолчанию.Когда пользователь нажимает клавишу ВВОД, форма закрывается.
Форма также имеет текстовое поле с кнопкой поиска рядом с ней.Текстовое поле позволяет пользователю вводить текст для поиска, а кнопка «Поиск» запускает функцию поиска.
Я бы хотел, чтобы пользователь мог нажимать клавишу ВВОД, когда текстовое поле имеет фокус ввода и выполняет поиск.функция активации.
Проблема в том, что форма захватывает событие клавиши ВВОД до того, как его получает обработчик текстового поля.
РЕДАКТИРОВАТЬ: я пытался использовать следующие обработчики событий, но они никогдаполучить удар, и форма закрывается при нажатии клавиши Enter:
private void txtFilter_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
Search();
e.Handled = true;
}
}
private void txtFilter_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
Search();
e.Handled = true;
}
}
Я также пытался включить свойство KeyPreview в форме и реализовать обработчик события KeyDown для формы, но клавиша Enter никогда не использоваласьПохоже, что любой из них будет поражен.
Каков наилучший способ сделать это?