在ResourceDictionary中故事板
-
23-09-2019 - |
题
所以我想我的故事板移动到一个资源字典文件,我无法这样做。我已经到处看,它涉及使“资源”共享,但我怎么做,在Silverlight时,有没有X:共享属性。下面是代码
<Storyboard x:Key="GreenButtonLight" >
<ColorAnimationUsingKeyFrames BeginTime="00:00:00"
Storyboard.TargetName="GreenBelow"
Storyboard.TargetProperty="(Shape.Fill).(GradientBrush.GradientStops)[0].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="00:00:00"
Value="#FF75F45D" />
<SplineColorKeyFrame KeyTime="00:00:00.1000000"
Value="#FFA5F796" />
<SplineColorKeyFrame KeySpline="1,0,1,0.06"
KeyTime="00:00:00.5000000"
Value="#FF75F45D" />
</ColorAnimationUsingKeyFrames>
</Storyboard>
下面是我在XAML
<Grid.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/ViewResources.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Grid.Resources>
和这里是错误,我得到
错误:元素已经是另一个元件的孩子。
它只是给了我,当我把在故事板,没有别的(如:样式)的错误。我使用Silverlight 3中,而不是WPF。
解决方案
您不能把故事板,因为它是一个有状态对象的资源。它知道它是否已经开始动画,它是在时间轴等也是其子动画收购的对象和属性他们被动画化的引用。
典型地,一个地方到故事板在控制模板元素的VisualStateManager被重用。
不隶属于 StackOverflow