バインドされたブール値プロパティを使用してトリガされるDataTriggerに基づいてスタイルを変更するTextBockがあります。 私が望むのは、バインドされたプロパティの値がtrueの場合、テキストのForeGroundカラーを変更することです。 falseの場合は、「デフォルト」スタイル(BodyValueStyle1)をもう一度使用したいと思います。私は今のところそれを行う方法 は次のとおりです。DataTriggerを使用してWPFコントロールの「デフォルト」スタイルを設定する方法
<TextBlock.Style>
<Style BasedOn="{StaticResource BodyValueStyle1}" TargetType="{x:Type TextBlock}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsTrueOrFalse}" Value="True">
<Setter Property="TextBlock.Foreground" Value="Red"/>
</DataTrigger>
<DataTrigger Binding="{Binding IsTrueOrFalse}" Value="False">
<Setter Property="TextBlock.Foreground" Value="Black"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
それは正常に動作し、私が欲しいものを行いますが、私は好まないことは、次のとおりです。
<DataTrigger Binding="{Binding IsTrueOrFalse}" Value="False">
<Setter Property="TextBlock.Foreground" Value="Black"/>
</DataTrigger>
「リセット」する方法はあります(BodyValueStyle1)に設定するのではなく、以前に変更したすべてのプロパティを設定するのではなく、デフォルトのスタイル(BodyValueStyle1)に変更しますか?とにかく私のデフォルトのForeGroundの色は黒であるので、 です。