WPF 静态资源(StaticResource)和动态资源(DynamicResource)

简介: WPF 静态资源(StaticResource)和动态资源(DynamicResource)

静态资源( StaticResource )指的是在程序载入内存时对资源的一次性使用,之后就不再访问这个资源了;

动态资源(DynamicResource)使用指的是在程序运行过程中然会去访问资源。

简单的可以理解为,如果换皮肤而不重启程序,就需要用 DynamicResource

<Window x:Class="WpfApp1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Window.Resources>
        <SolidColorBrush x:Key="PrimaryColorBrush" Color="#FF2477F3"/>
    </Window.Resources>
    <Grid>
        <StackPanel>
            <Border Margin="10" Width="60" Height="60" Background="{StaticResource PrimaryColorBrush}"></Border>
            <Border Margin="10" Width="60" Height="60" Background="{DynamicResource PrimaryColorBrush}"></Border>
            <Button Margin="10" Width="60" Height="30" Content="Update" Click="Update_Click" />
        </StackPanel>
    </Grid>
</Window>

 

namespace WpfApp1
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private void Update_Click(object sender, RoutedEventArgs e)
        { 
            this.Resources["PrimaryColorBrush"] = new SolidColorBrush(Colors.Red);
        }
    }
}

 

 

目录
相关文章
|
C#
WPF 界面实现多语言支持 中英文切换 动态加载资源字典
原文:WPF 界面实现多语言支持 中英文切换 动态加载资源字典 1、使用资源字典,首先新建两个字典文件en-us.xaml、zh-cn.xaml。定义中英文的字符串在这里面【注意:添加xmlns:s="clr-namespace:System;assembly=mscorlib】 zh-cn.
3211 0
|
4月前
|
开发者 C# 存储
WPF开发者必读:资源字典应用秘籍,轻松实现样式与模板共享,让你的WPF应用更上一层楼!
【8月更文挑战第31天】在WPF开发中,资源字典是一种强大的工具,用于共享样式、模板、图像等资源,提高了应用的可维护性和可扩展性。本文介绍了资源字典的基础知识、创建方法及最佳实践,并通过示例展示了如何在项目中有效利用资源字典,实现资源的重用和动态绑定。
120 0
|
C# 数据格式 XML
WPF 资源(StaticResource 静态资源、DynamicResource 动态资源、添加二进制资源、绑定资源树)
原文:WPF 资源(StaticResource 静态资源、DynamicResource 动态资源、添加二进制资源、绑定资源树) 一、WPF对象级(Window对象)资源的定义与查找 实例一: StaticR...
8491 0
|
7月前
|
C#
浅谈WPF之样式与资源
WPF通过样式,不仅可以方便的设置控件元素的展示方式,给用户呈现多样化的体验,还简化配置,避免重复设置元素的属性,以达到节约成本,提高工作效率的目的,样式也是资源的一种表现形式。本文以一个简单的小例子,简述如何设置WPF的样式以及资源的应用,仅供学习分享使用,如有不足之处,还请指正。
142 0
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
WPF界面无法正常显示(资源引用,如转换器),但程序正常运行
|
C#
WPF资源字典怎么用
资源字典的使用方法
239 0
WPF资源字典怎么用
|
C#
WPF中的一个bug造成CPU资源拉满
WPF中的一个bug造成CPU资源拉满
214 0
|
C#
WPF 调用资源图片
原文:WPF 调用资源图片      最近做的wpf项目中,在开发的时候,把图片放到了bin下面,采用了imagePath =System.IO.Directory.GetCurrentDirectory()+"/images/starShow.
1304 0
|
C#
WPF - 资源收集
原文:WPF - 资源收集   OpenExpressApp的UI现在是使用WPF,所以熟悉WPF是必须的,以下我将可能用到的一些相关内容随时记录下来,以备查阅。此篇文章将不断更新,感兴趣的可以看看,也欢迎大家补充。
1191 0
|
C#
WPF在XAML的资源中定义空字符串String.Empty
原文:WPF在XAML的资源中定义空字符串String.Empty 代码如下:                      test1     test1          
1062 0