WPF 界面主题颜色绑定切换

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函数中,

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值