我尝试从app.xaml获取动画(向上/向下移动标签,就像弹出消息一样)。但是,当我试图获得故事板时
的App.xaml:
<Storyboard x:Key="AnimatedMessage">
<DoubleAnimationUsingKeyFrames
Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.Y)"
Duration="0:0:10"
AutoReverse="True">
<LinearDoubleKeyFrame Value="100" KeyTime="0:0:2"/>
<LinearDoubleKeyFrame Value="200" KeyTime="0:0:4"/>
<LinearDoubleKeyFrame Value="300" KeyTime="0:0:6"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
我的后端:
Storyboard SBStartAnimation = (Storyboard)this.FindResource("AnimatedMessage");
Storyboard.SetTarget(SBStartAnimation, LBAnimateMessage);
SBStartAnimation.Begin(this);
但它怪我,我无法为storyboard-object设置属性,因为它是只读的。
更新:
我的标签我喜欢动画:
<Label Content="" Name="LBAnimateMessage" Visibility="Hidden" Width="600" Style="{StaticResource Style_BasicMessage}" Margin="10,303,235,38"/>
答案 0 :(得分:0)
主要问题是您正在尝试设置Storyboard的目标,而不是设置它的动画。试试Storyboard.SetTarget(SBStartAnimation.Children.First(), LBAnimateMessage);
不要忘记LBAnimateMessage
必须属于PropertyPath
财产。
编辑:更正,PropertyPath适用于SetTargetProperty。