을 호출되는 것을 방지한다. 또한 잘못된 규칙이있는 입력을 사용자에게 알리기 위해 유효성 검사 규칙을 사용하고 있습니다. 검증 오류는 속성 setter가 나는 다음과 같은 문제에 대한 간단한 솔루션을 찾고 있어요
... 여기에 에러 표시 스타일 ...
이제 데이터를 전송하기 위해 버튼을 누르면 할 수있는 텍스트 상자에 사용자가 유효한 데이터를 입력해야합니다. 단추를 클릭하면 코드 배후의 바운드 속성 UserName에서 데이터가 평가되고 전송됩니다.
문제는 사용자가 유효한 데이터를 TextBox에 입력 할 수 있으며이 속성은 UserName 속성에 설정된다는 것입니다. 그런 다음 사용자가 TextBox에서 텍스트를 변경하기로 결정하고 데이터가 유효하지 않게되면 유효성 검사 실패 후 UserName 속성의 setter가 호출되지 않습니다.
즉, 마지막 유효 데이터는 UserName 속성에 유지되고 TextBox는 오류 표시기와 함께 잘못된 데이터를 표시합니다. 그런 다음 사용자가 단추를 클릭하여 데이터를 보내면 현재 TextBox 내용 대신 마지막 유효한 데이터가 전송됩니다.
데이터가 유효하지 않고 실제로는 버튼을 비활성화 할 수 있지만이 메서드는 UserName의 setter에서 호출됩니다. 유효성 검사가 실패한 후에도 호출되지 않으면 버튼은 계속 활성화됩니다.
그래서 질문입니다. 유효성 검사 실패 후 속성 설정자를 호출하려면 어떻게해야합니까?
어떻게 입력의 유효성을 검사합니까? 세터? 단추에 CommandBinding을 사용합니까? 몇 가지 샘플 코드를 제공 할 수 있습니까? – Jehof
아니요, 명령 바인딩이 있습니까?setter에서 호출 된 유효성 검사 메서드는 바인딩 된 속성 값의 정확성을 간단히 확인하고 단추의 사용 가능 상태를 설정합니다. –
@HA : 이것에 대한 해결책을 찾을 수 있었습니까? 나는 똑같은 문제를 겪고있다. 대답은 명확하지 않습니다. – user575219