2つのテキストボックスにエラーがない場合にのみボタンのIsEnabledをtrueにしたい(この場合、両方を数値にしたい)
テキストボックスをNotifyOnValidationError=Trueに設定しようとしましたが、これにより、コンテナコントロールにバブルアップする例外が発生すると考えました。次に、そのコントロールに属するValidation.HasError添付プロパティに基づいて、ボタンのIsEnabledをtrueに設定します。
次のことを試しましたが(フォーマットコードを削除)、機能しません(アプリケーションを最初に起動したときにボタンが有効になっていて、テキストボックスが空です-null許容の小数にバインドされています)
<WrapPanel>
<TextBox x:Name="txtDeltaMin"Text="{Binding Path=DeltaMinFilter, NotifyOnValidationError=True, ValidatesOnDataErrors=True, ValidatesOnExceptions=True}"></TextBox>
<TextBox x:Name="txtDeltaMax" Text="{Binding Path=DeltaMaxFilter, NotifyOnValidationError=True, ValidatesOnDataErrors=True, ValidatesOnExceptions=True}"></TextBox>
<Button x:Name="btnUpdateFilter" Click="btnUpdateFilter_Click" IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type WrapPanel}}, Path=(Validation.HasError)}">Filter</Button>
</WrapPanel>