从storyboard获取动画元素
本文关键字:元素 动画 获取 storyboard | 更新日期: 2023-09-27 18:02:06
我在资源字典文件中有这个故事板:
<Storyboard x:Key="InfoDissolve">
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)">
<DiscreteObjectKeyFrame KeyTime="0:0:0" Value="{x:Static Visibility.Visible}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:5" x:Name="OutVisibility" Value="{x:Static Visibility.Hidden}"/>
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation
Storyboard.TargetProperty="Opacity"
BeginTime="0:0:0" From="0.0" To="1.0" Duration="0:0:0.3"/>
<DoubleAnimation
x:Name="OutOpacity"
Storyboard.TargetProperty="Opacity"
BeginTime="0:0:3" From="1.0" To="0.0" Duration="0:0:2"/>
</Storyboard>
后面的代码是这样的
var sb = (Storyboard) MW.FindResource("InfoDissolve");
在后面的代码中,我需要访问outvisibility关键帧和outopacity doubleanimation,这样我就可以改变它们的keytime和begintime。
我该怎么做呢?
sb.Children
这个时间轴集合将包含两个DoubleAnimation对象。只需在它们的名称上添加一个测试,然后对每个名称做您想做的事情(我相信您需要对它们进行强制转换)