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

一、文章概述

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

二、定义并使用资源

1 2 3 4 5 6 7 8 9 10 11 12 13 14 <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>

  

二、更新资源内容

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

  

三、更新资源前后的变化