Какой лучший способ выхватить возвращаемый ключ в PasswordBox? (WPF/XAML)
Какой лучший способ поймать ключ возврата в PasswordBox? (WPF/XAML)
У меня есть поле TextBox и поле PasswordBox в моей форме входа (для ввода имени пользователя и пароля). У меня также есть кнопка входа в систему, которая вызывает метод, который выполняет процедуру проверки входа в систему.
Мне нужно, чтобы клавиша Return реагировала так же, как и в PasswordBox, так что у пользователя может быть опция ввести свое имя пользователя и пароль и просто нажать Return to log in.
Кто-нибудь знает, как это делается в WPF? Любая помощь приветствуется.
Ответы
Ответ 1
Существует еще более простой механизм для активации кода кнопки. Класс WPF Button предоставляет свойство, называемое IsDefault. Если установлено значение true, если вы нажмете return, когда некоторые объекты в окне имеют фокус, код события нажатия кнопки будет запущен автоматически. Этот механизм работает как прелесть с паролем.
Ответ 2
Вы можете обрабатывать событие KeyDown в PasswordBox (и TextBox, если необходимо), а затем использовать следующий обработчик событий -
private void OnKeyDown(object sender, KeyEventArgs e)
{
if (e.Key != Key.Return && e.Key != Key.Enter)
return;
e.Handled = true;
HandleEnter();
}
Ответ 3
Вы можете попробовать использовать RoutedCommand.
Вы можете установить его в свойстве Command Button.
Вы также можете добавить KeyGesture в InputBindings вашей формы входа, чтобы связать клавишу Enter, чтобы запустить RoutedCommand.
Затем добавьте CommandBinding в CommandBindings вашей формы входа, чтобы привязать обработчики RoutedCommand к Executed в вашем коде и выполнить или инициировать процесс проверки входа в систему.