通过代码访问我们在Silverlight中定义的资源是很简单的,我们首先定义如下一个资源

>

 

我们在UserControl的Resources属性中定义了一个LinearGradientBrush类型的资源,并将它的索引定义为"BackgroundBrush",接下来通过下面这段代码就可以访问此资源了

 

Code
LinearGradientBrush brush = (LinearGradientBrush)this.Resources["BackgroundBrush"];
Color color 
= brush.GradientStops[0].Color;
brush.GradientStops[
0].Color = brush.GradientStops[2].Color;
brush.GradientStops[
2].Color = color;

 

需要注意的是由于Silverlight仅支持静态资源,所以不能将以定义好的资源替换为其他对象,例如下面这段代码所示:

 

Code
SolidColorBrush brush = new SolidColorBrush(Colors.Yellow);
this.Resources["BackgroundBrush"= brush;

相关文章: