Pergunta

Qual é a melhor maneira de pegar a chave de retorno em um PasswordBox? (Wpf/xaml)

Eu tenho um campo de caixa de texto e um campo PasswordBox no meu formulário de login (para entrada de nome de usuário e senha). Eu também tenho um botão de login que chama o método que executa o processo de validação de login.

Preciso fazer com que a tecla de retorno reaja da mesma maneira no PasswordBox, para que o usuário possa ter a opção Digite seu nome de usuário e senha e simplesmente pressionar o retorno para fazer o login.

Alguém sabe como isso é feito no WPF? Qualquer ajuda é apreciada.

Foi útil?

Solução

Existe um mecanismo ainda mais fácil para ativar o código do botão. A classe de botão WPF fornece uma propriedade chamada ISDefault. Quando definido como true, se você pressionar retornar enquanto alguns objetos na janela têm foco, o código do evento de clique do botão será disparado automaticamente. Esse mecanismo funciona como um charme com o PasswordBox.

Outras dicas

Você pode lidar com o evento KeyDown no PasswordBox (e TextBox, se desejar) e depois usar o seguinte manipulador de eventos -

private void OnKeyDown(object sender, KeyEventArgs e)
{
    if (e.Key != Key.Return && e.Key != Key.Enter)
        return;
    e.Handled = true;
    HandleEnter();
}

Você pode tentar usar um comando de roteed.

Você pode configurá -lo na propriedade de comando do botão.
Você também pode adicionar um keyesture às peças de entrada do seu loginform para vincular a tecla Enter para acionar o seu RoutedCommand.

Em seguida, adicione um comandobinding nos comandos do seu LogInform para vincular o componente roteed aos manipuladores executados em seu código e executar ou acionar seu processo de validação de login.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top