WPF资源
资源是可以应用程序中重复使用的对象,当需要的使用的时候,我们就可以调用自定义好的资源,既可以方便XAML代码的重用,也有助于维护应用的一致性
资源的定义位置不同,所产生的作用范围也是不同的
(1)标签里面定义:本标签应用
(2)窗口(页面)定义:本窗口应用
(3)应用程序定义(App.xaml):整个应用程序
定义资源的语法格式:
<根元素对象.Resources>
<资源定义>
</根元素对象.Resources>
定义Grid的资源,由TextBlock引用
<Grid>
<Grid.Resources>
<LinearGradientBrush x:Key="bgBrush" StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="#FFB34510" Offset="0"/>
<GradientStop Color="#FF4738CD" Offset="1"/>
<GradientStop Color="#FE2EF07D" Offset="0.222"/>
<GradientStop Color="#FE2AE4B8" Offset="0.417"/>
<GradientStop Color="#FE0881AE" Offset="0.608"/>
<GradientStop Color="#FEE8311B" Offset="0.799"/>
<GradientStop Color="#FE5EC707" Offset="0.073"/>
<GradientStop Color="#FED11D4A" Offset="0.031"/>
</LinearGradientBrush>
</Grid.Resources>
<TextBlock Background="{StaticResource bgBrush}"></TextBlock>
</Grid>
资源字典
XAML资源分为静态资源(StaticResource)和动态资源(DynamicResource),一般在页面引用(FrameworkElement.Resources)的是静态资源比较多,它可以在一个资源内自定义多个资源对象。
页面资源字典(FrameworkElement.Resources)
Application.Resources是可以应用到整个应用程序的资源,定义在App.xaml页面,只要是合理的引用。要引用就须首先建立一个资源字典,建立好之后就可以在资源字典编写需要的东西。资源字典所编写的也不是特殊性的,就和平常代码一样。当编写好之后进行调用即可。但是要注意的是引用之后,那默认使用的便都是所引用的,除非是设置于引用之外的。
有时候我们会将资源字典分成几个来使用,这样是便于编译器区分,但是有时只需要使用到其中一些资源,这时将资源字典合并即可