使用したグローバル スタイル (式 dark) を失うことなく、wpf リストビューの列ヘッダーの可視性を依存関係プロパティにバインドしたいと考えています。
スタイルを定義しました:
<Style x:Key="myHeaderStyle" TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Visibility" Value="{Binding ColumnHeaderVisibility}" />
</Style>
次に、次のように適用しました。
<GridView ColumnHeaderContainerStyle="{StaticResource myHeaderStyle}">
私は表現暗いテーマを使用しています。MergedDictionaries を介してインポートされ、実行時に変更できます。
列ヘッダーが表示されていない場合は、すべて問題ありません。ただし、ColumnHeaderContainerStyle を設定すると式のダーク スタイルがオーバーライドされるため、表示される場合はデフォルトの Windows スタイルで表示されます。
実行時にスタイルを変更する必要があるため、すべてのリソースが動的であるため、元のスタイルで「BasedOn」を使用することはできません。BasedOn は静的リソースでのみ機能し、実行時に変更することはできません。
他に何ができますか?