作成したベースWPFウィンドウにトリガーを適用しようとしています。スタイルを正常に適用できますが、トリガーが機能していないようです。
基本的に、実行時に現在のリソースディクショナリをアプリケーションにダンプし、別のリソースディクショナリのセットをロードして、コントラストを高くします。動作しているように見えますが、ハイコントラストモードで処理する必要のある画像の解決策を見つけようとしています。この特定のケースでは、ウィンドウの背景はImageBrushに設定されています。ハイコントラストモードのときに、トリガーを使用して背景をシステムカラーに設定しようとしています。
私はこの解決策を試しましたが、どちらも機能していないようです:
<Style TargetType="{x:Type local:Mywindow}">
<Setter Property="Tag"
Value="{DynamicResource {x:Static SystemParameters.HighContrastKey}}" />
<Style.Triggers>
<Trigger
Property="Tag"
Value="True">
<Setter Property="Background" Value="{DynamicResource MyColor}"/>
</Trigger>
</Style.Triggers>
</Style>
そしてまた
<Style TargetType="{x:Type local:Mywindow}">
<Style.Triggers>
<DataTrigger
Binding="{Binding Source={x:Static SystemParameters.HighContrast}}"
Value="True">
<Setter Property="Style" Value="{DynamicResource highContrastStyle}"/>
</DataTrigger>
</Style.Triggers>
</Style>