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

一、文章概述

本演示介绍了WPF的静态资源和动态资源的基本使用,并对两者做了简单的比较。
静态资源(StaticResource)指的是在程序载入内存时对资源的一次性使用,之后就不再访问这个资源了;动态资源(DynamicResource)使用指的是在程序运行过程中然会去访问资源。

二、定义并使用资源

<Window x:Class="Demo010.MainWindow"  
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
        Title="MainWindow" Height="149" Width="296">  
    <Window.Resources>  
        <TextBlock x:Key="Res1" Text="海上生明月" />  
        <TextBlock x:Key="Res2" Text="海上生明月" />  
    </Window.Resources>  
    <StackPanel>  
        <Button Margin="5,5,5,0" Content="{StaticResource Res1}" />  
        <Button Margin="5,5,5,0" Content="{DynamicResource Res2}" />  
        <Button Margin="5,5,5,0" Content="Update" Click="UpdateRes_Click" />  
    </StackPanel>  
</Window> 

  

二、更新资源内容

private void UpdateRes_Click(object sender, RoutedEventArgs e)  
{  
    this.Resources["Res1"] = new TextBlock() { Text = "天涯共此时" };  
    this.Resources["Res2"] = new TextBlock() { Text = "天涯共此时" };  
}  

  

三、更新资源前后的变化

原文地址:https://www.cnblogs.com/callyblog/p/7421326.html