我設置的自定義顏色,以文本框的前景財產,如下圖所示WPF-前景色不是OS主題變化而變化
<TextBlock x:Name="lblTitle" FontSize="13" Text="abx" Foreground="#FF003399"/>
的問題是,當OS主題得到改變前景色不根據os主題進行更改。所以任何人都知道如何解決它,在此先感謝。
我設置的自定義顏色,以文本框的前景財產,如下圖所示WPF-前景色不是OS主題變化而變化
<TextBlock x:Name="lblTitle" FontSize="13" Text="abx" Foreground="#FF003399"/>
的問題是,當OS主題得到改變前景色不根據os主題進行更改。所以任何人都知道如何解決它,在此先感謝。
如果你想讓WPF應用程序使用系統(操作系統主題)的顏色,你應該使用SystemColors class。
<ControlTemplate TargetType="Button">
<Grid>
<Border Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}">
<ContentPresenter />
</Border>
</Grid>
</ControlTemplate>
如果要使用不同的顏色時,默認主題已被選定,你可以使用一個ValueConverter改變顏色:使得WPF按鈕使用控制刷鑰匙作爲背景色的
例只有當系統顏色是默認值時。
如果你重寫顏色,你爲什麼期望它隨着操作系統主題而改變? –
我有這樣的要求,對於正常的主題,上面的顏色應該設置,如果os主題改變,那麼顏色也應該根據主題 – Raghva
改變看看'ResourceDictionary.ThemeDictionaries'和'ThemeResource'。 – grek40