문제

암호 상자에서 리턴 키를 잡는 가장 좋은 방법은 무엇입니까? (WPF/XAML)

로그인 양식에 텍스트 상자 필드와 암호 상자 필드가 있습니다 (사용자 이름 및 비밀번호 항목). 로그인 유효성 검사 프로세스를 수행하는 메소드를 호출하는 로그인 버튼도 있습니다.

Return Key가 PasswordBox에서 동일한 방식으로 반응하여 사용자가 사용자 이름과 암호를 입력하고 단순히 로그인에 반응 할 수 있도록해야합니다.

WPF에서 이것이 어떻게 이루어 지는지 아는 사람이 있습니까? 모든 도움이 감사합니다.

도움이 되었습니까?

해결책

버튼의 코드를 활성화하는 더 쉬운 메커니즘이 있습니다. WPF 버튼 클래스는 isdefault라는 속성을 제공합니다. true로 설정되면, 창의 일부 객체에 초점이 맞는 동안 반환을 누르면 버튼의 클릭 이벤트 코드가 자동으로 발사됩니다. 이 메커니즘은 암호 상자와의 매력처럼 작동합니다.

다른 팁

PasswordBox (및 원하는 경우 TextBox)에서 KeyDown 이벤트를 처리 한 다음 다음 이벤트 핸들러를 사용할 수 있습니다.

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

RoutedCommand를 사용해 볼 수 있습니다.

버튼의 명령 속성에 설정할 수 있습니다.
또한 LoginForm의 입력 결합에 키 하단을 추가하여 Enter 키를 바인딩하여 RoutedCommand를 트리거 할 수도 있습니다.

그런 다음 loginform의 명령 바인딩에 명령 바인딩을 추가하여 코드에서 RoutedCommand를 실행 된 핸들러에 바인딩하고 로그인 유효성 검사 프로세스를 수행하거나 트리거합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top