无法解析TargetName错误
问题描述:
请在visual basic中提供答案。 只是想知道Storyboard.SetTargetName
的语法。无法解析TargetName错误
Me._StoryMoveLeft = New Storyboard
DAnim = New DoubleAnimation
Me._StoryMoveLeft.Children.Add(DAnim)
Storyboard.SetTargetName(DAnim, "SmoothRectTranslate")
Storyboard.SetTargetProperty(DAnim, New PropertyPath(TranslateTransform.XProperty))
Me._StoryMoveLeft.Stop()
danim = CType(Me._StoryMoveLeft.Children(0), DoubleAnimation)
DAnim.Duration = New Duration(ts)
DAnim.To = newDestinationRect.Left
Me._StoryMoveLeft.Begin() '<-- ERROR OCCOURS Cannot resolve TargetName SmoothRectTranslate.
<Rectangle x:Name="RectSmoot" Fill="Lime" Width="20" Height="20" Stroke="{Binding Stroke}" StrokeThickness="{Binding StrokeThickness}" HorizontalAlignment="Left" VerticalAlignment="Top" >
<Rectangle.RenderTransform>
<TranslateTransform X="20" Y="20" x:Name="SmoothRectTranslate" />
</Rectangle.RenderTransform>
</Rectangle>
答
要在代码中使用Storyboard.TargetName
你需要创建一个名称范围,见documentation of SetTargetName
对于如何做到这一点的例子。
(顺便说一句,如果你只有一个动画我不会用一个故事板的话,那只能意味着麻烦,只需拨打BeginAnimation
变换)
一切之上WPF,请检查您的术语,在所有这些情况下,你想要说XAML,不是吗?另外,XAML代码片段位于哪里?如果它在DataTemplate或类似的东西中,你当然不能从它的范围外动画它等。 –
嗨。它不是一个模板。只需一个带有XAML和代码隐藏的简单页面。 – Nasenbaer