读书人

WPF的Resource可以相互作用吗,该怎么处

发布时间: 2012-09-11 10:49:04 作者: rapoo

WPF的Resource可以相互作用吗
在resource中设置了一个coloranimation和一个brush,想用animation改变刷子的颜色,但是运行会报错,请问有什么解决方案

HTML code
<UserControl.Resources>        <SolidColorBrush x:Name="myBrush" Color="Gainsboro"></SolidColorBrush>        <Storyboard x:Name="BrushChange">            <ColorAnimation RepeatBehavior="Forever" From="LightBlue" To="LightGray" Duration="0:0:01" Storyboard.TargetName="myBrush" Storyboard.TargetProperty="Color">                            </ColorAnimation>            <PointAnimation RepeatBehavior="Forever" From="20,20" To="180,180" Duration="0:0:20" Storyboard.TargetName="myPath" Storyboard.TargetProperty="Center">                            </PointAnimation>        </Storyboard>    </UserControl.Resources>


[解决办法]
探讨

引用:

System.Windows.Media.Brush 对象继承自 System.Windows.Freezable ,一经初始化完毕就会使自身变为只读以节约内存。所以你不能改变资源中画刷的颜色,只能改变对象引用的画刷。

谢谢,那有没有办法做一个可以用coloranimation改变的公共画刷呢,如果我多个控件都是一样的需求,那么每个控件就要分别对应一个画刷和……

读书人网 >C#

热点推荐