在 PasswordBox 中捕获返回键的最佳方法是什么?(WPF/XAML)
我的登录表单上有一个 TextBox 字段和一个 PasswordBox 字段(用于输入用户名和密码)。我还有一个登录按钮,它调用执行登录验证过程的方法。
我需要让 Return 键在 PasswordBox 中以相同的方式做出反应,以便用户可以选择输入他们的用户名和密码,然后只需点击 Return 即可登录。
有谁知道这是如何在 WPF 中完成的?任何帮助表示赞赏。
在 PasswordBox 中捕获返回键的最佳方法是什么?(WPF/XAML)
我的登录表单上有一个 TextBox 字段和一个 PasswordBox 字段(用于输入用户名和密码)。我还有一个登录按钮,它调用执行登录验证过程的方法。
我需要让 Return 键在 PasswordBox 中以相同的方式做出反应,以便用户可以选择输入他们的用户名和密码,然后只需点击 Return 即可登录。
有谁知道这是如何在 WPF 中完成的?任何帮助表示赞赏。
有一个更简单的机制来激活按钮的代码。WPF Button 类提供了一个名为 IsDefault 的属性。当设置为 true 时,如果在窗口中的某些对象有焦点时按回车,按钮的单击事件代码将自动触发。这种机制就像密码框的魅力一样。
您可以处理 PasswordBox 上的 KeyDown 事件(如果需要,还可以处理 TextBox),然后使用以下事件处理程序——
private void OnKeyDown(object sender, KeyEventArgs e)
{
if (e.Key != Key.Return && e.Key != Key.Enter)
return;
e.Handled = true;
HandleEnter();
}
您可以尝试使用 RoutedCommand。
您可以在 Button 的 Command 属性上设置它。
您还可以将 KeyGesture 添加到登录表单的 InputBindings 以绑定 Enter 键以触发您的 RoutedCommand。
然后在您的登录表单的 CommandBindings 中添加一个 CommandBinding,以将 RoutedCommand 绑定到代码中的 Executed 处理程序,并执行或触发您的登录验证过程。