Какой самый нормальный способ активировать/деактивировать кнопку в зависимости от того есть ли в UserControl'e ошибки валидации?
Есть некий юзер контрол, в каждом из полей происходит валидация.
<UserControl>
<TextBox>
<TextBox.Text>
<Binding ElementName="Ctrl1" Path="Days">
<Binding.ValidationRules>
<ExceptionValidationRule/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
<TextBox>
<TextBox.Text>
<Binding ElementName="Ctrl1" Path="TimeOfDay" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<ExceptionValidationRule/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
</UserControl>
Теперь я хочу выключить кнопку если в контроле есть ошибки валидации:
<Button Content="Press" Click="Button_Click">
<Button.Style>
<Style TargetType="Button">
<Setter Property="IsEnabled" Value="false"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=CtrlTimeSpan, Path=(Validation.HasError)}" Value="False">
<Setter Property="IsEnabled" Value="True"/>
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=CtrlTimeSpan, Path=(Validation.HasError)}" Value="True">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>
Но оно не видит там ошибок, они видимо по дефолту не всплывают.