IDataErrorInfo와 유효성 검사 규칙을 조합하여 유효성 검사를 수행하는 WPF 응용 프로그램에서 작업하고 있습니다. 런타임에 유효성 검사 결과를 표시하기 위해 창의 XAML에서 일부 스타일을 만들었습니다. 이러한 스타일의 하나는 한 입력 오류가 다른 이름으로 저장 버튼을 비활성화해야합니다 :하나의 버튼에만 검증 결과를 적용 할 수 있습니까?
스타일 창에서 모든 버튼을 비활성화합니다
<Window.Resources> <!--Disabling the Save-button by style not viewmodel-property--> <Style TargetType="{x:Type Button}"> <Style.Triggers> <DataTrigger Binding="{Binding ElementName=tbx_firstname, Path=(Validation.HasError)}" Value="true"> <Setter Property="IsEnabled" Value="False"/> </DataTrigger> <DataTrigger Binding="{Binding ElementName=tbx_lastname, Path=(Validation.HasError)}" Value="true"> <Setter Property="IsEnabled" Value="False"/> </DataTrigger> <DataTrigger Binding="{Binding ElementName=tbx_age, Path=(Validation.HasError)}" Value="true"> <Setter Property="IsEnabled" Value="False"/> </DataTrigger> </Style.Triggers> </Style> </Window.Resources>
나는 두 가지 문제가있다. 저장 버튼 만 사용 중지하려면 어떻게해야합니까? 나는 다음을 시도했지만 (VS 그것을 허용하지 않습니다) 구문 오류가있을 것 같습니다 :
<Style TargetType="{x:Name btn_save}">
내가 검증 각 컨트롤을 확인해야하는 저장 버튼의 스타일에서. (보기 모델과 결합해야하기 때문에) 해당 부분을 짧게 만들고 오류가 발생하기 쉬운 가능성이 있습니까?
미리 감사드립니다.
<Style x:Key="SaveButtonStyle" TargetType="{x:Type Button}">
는에 암시 적으로 적용되지 않습니다 그런 식으로 : 당신이 당신의 스타일 대신 그들 모두의 하나의 버튼에 적용하려면
대단히 감사합니다. Manfred! 1 분 전에 같은 것을 발견했습니다. 약간의 키가 그런 차이를 만듭니다. –