WPFでは、DataTriggerがアタッチされたプロパティにバインドすることは可能ですか?
基本的に、特定の検証ルールが破られたときにスタイルを提供するために、アタッチされたプロパティでコンバーターを使用したいと思います。私は次のようなマークアップを使用しています:
<DataTrigger Binding="{Binding Path=Validation.Errors,
RelativeSource={RelativeSource Self},
Converter={StaticResource RequiredToBoolConverter}}"
Value="True">
<Setter Property="Background" Value="LightGreen" />
</DataTrigger>
ただし、これを実行すると、次のようになります。
System.Windows.Dataエラー:39:BindingExpressionパスエラー:'Validation'プロパティが'オブジェクト''' TextBox'(Name ='')'に見つかりません。BindingExpression:Path = Validation.Errors; DataItem ='TextBox'(Name =''); ターゲット要素は'TextBox'(Name ='');です。ターゲットプロパティは「NoTarget」(タイプ「Object」)です
DataTriggerバインディングパスを「Text」に変更しても、データバインディングエラーは発生しません(ただし、もちろん、求めている動作は提供されません)。