WPF 界面主题颜色绑定切换

博客介绍了WPF界面颜色动态绑定及主题颜色切换方法。先在App.xaml文件定义可改变的动态资源,设计界面并设置窗体样式,通过‘更新颜色’方法移除并添加新笔刷完成动态替换,还可将主题颜色写入配置文件,在软件启动时加载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WPF 界面颜色动态绑定(界面主题颜色绑定切换)

1、窗口/按钮 边框颜色动态绑定资源
    首先在App.xaml文件中定义一个键值为“color”的单色笔刷,这个笔刷就是可以被用户改变的动态资源:

<SolidColorBrush x:Key="color" Color="SkyBlue" />

2、 设计一个界面:其原理与窗口样式相同。

<Border BorderBrush="{DynamicResource color}" BorderThickness="3" CornerRadius="5" Padding="4">
<Border BorderBrush="{DynamicResource color}" BorderThickness="3" CornerRadius="5" Background="{DynamicResource color}">

3、 然后回到主界面设计窗口,设置窗体的样式: 简单button样式

<Style x:Key="myButton" TargetType="Button">
    <Setter Property="Margin" Value="5,2" />
    <Setter Property="Background" Value="Blue" />
    <Setter Property="Height" Value="25" />
    <Setter Property="BorderBrush" Value="{DynamicResource color}" />
</Style>

按钮绑定样式:

<Button Style="{StaticResource myButton}"/>

“更新颜色”方法代码如下:

public void ChangeThemeColor(Color c)//更新颜色
{
    this.Resources.Remove("color");
    this.Resources.Add("color", new SolidColorBrush(c));
}

此方法首先移除资源“color”,然后再添加一个同名的新笔刷,这样就完成了动态替换工作。
可以把主题颜色写入配置文件中,然后软件启动时候加载, Load函数中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值