WPF 用代码调用dynamic resource动态更改背景 - CSDN博客

原文: WPF 用代码调用dynamic resource动态更改背景 - CSDN博客

一般dynamic resoource通常在XAML里调用,如下范例:

<Button Click="Button_Click" Background="{DynamicResource Theme1}" />

如果在ResourceDictionary定义了很多不同的背景,比如:

<VisualBrush x:Key="Theme1">
    <VisualBrush.Visual>
        <Viewbox Width="1920" Height="1080">
            <Canvas x:Name="PART_Canvas" Width="1920" Height="1080">               
                    <Path Data="F1 M 1920.000,1079.906 L 0.000,1080.000 L 0.000,0.094 L 1920.000,0.000 L 1920.000,1079.906 Z">
                        <Path.Fill>
                            <LinearGradientBrush MappingMode="Absolute" StartPoint="959.917,-1324.218" EndPoint="959.916,-55.456">
                                <LinearGradientBrush.GradientStops>
                                    <GradientStop Offset="0.00" Color="#ff5090cd"/>
                                    <GradientStop Offset="0.66" Color="#ff5090cd"/>
                                    <GradientStop Offset="0.76" Color="#ff5090cd"/>
                                    <GradientStop Offset="0.95" Color="#ff287bbf"/>
                                    <GradientStop Offset="1.00" Color="#ff0067b1"/>
                                </LinearGradientBrush.GradientStops>
                                <LinearGradientBrush.Transform>
                                    <MatrixTransform Matrix="1.000,0.000,-0.000,-1.000,0.084,0.631" />
                                </LinearGradientBrush.Transform>
                            </LinearGradientBrush>
                        </Path.Fill>
                    </Path>
</Canvas></ViewBox></VisualBrush.Visual></VisualBrush> 


就可以在codebehind里,用如下方式动态选择不同的背景:

this.btn.SetResourceReference(BackgroundProperty, "Theme1");


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值