WPF 旋转动画问题。xaml里能成功,cs类里写就报错

pengcong005 2012-09-19 03:33:09

这是XAML的方式,能成功:

<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)" Storyboard.TargetName="image4">
<EasingDoubleKeyFrame KeyTime="0:0:1" Value="30">
<EasingDoubleKeyFrame.EasingFunction>
<CircleEase EasingMode="EaseInOut"/>
</EasingDoubleKeyFrame.EasingFunction>
</EasingDoubleKeyFrame>
</DoubleAnimationUsingKeyFrames>


这是CS代码的方式,要说属性错误:

DoubleAnimation daRotation = new DoubleAnimation();
daRotation.From = rd.Next(360);
daRotation.To = rd.Next(360);
daRotation.EasingFunction = new CircleEase() { EasingMode = EasingMode.EaseInOut };
daRotation.Duration = new TimeSpan(0, 0, 0, 0, 1500);
Storyboard.SetTargetProperty(daRotation, new PropertyPath("(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)"));
Storyboard.SetTarget(daRotation, element);
sb.Children.Add(daRotation);



百思不得其解啊。。。 大神们求助啊。。。
...全文
194 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
aggier 2013-04-19
  • 打赏
  • 举报
回复
element 这个对象在哪里定义了??????
pengcong005 2012-09-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
亲,试试在调用动画之前加一句
element.RenderTransform = new RotateTransform();
[/Quote]

谢谢, 解决了
心粘快乐 2012-09-20
  • 打赏
  • 举报
回复
亲,试试在调用动画之前加一句
element.RenderTransform = new RotateTransform();

110,892

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧