带有rotatetransform代码的silverlight故事板动画

时间:2011-07-30 20:30:23

标签: silverlight animation rotation code-behind storyboard

我正在尝试从后面的代码中旋转对象。代码如下:

        Storyboard storyBoard = new Storyboard();

        //Transform
        RotateTransform rotate = new RotateTransform();
        rotate.Angle = 45;
        rotate.CenterX = 50;
        rotate.CenterY = 20;
        RodBorder.RenderTransform = rotate;

        DoubleAnimation Anim = new DoubleAnimation();
        Anim.Duration = new Duration(TimeSpan.FromMilliseconds(3000));
        Anim.SetValue(Storyboard.TargetPropertyProperty, rotate);


        Storyboard.SetTargetProperty(Anim, new PropertyPath("RenderTransform.Angle"));
        Storyboard.SetTarget(Anim, RodBorder);

        storyBoard.Children.Add(Anim);
        storyBoard.Begin();

RodBorder是我想要旋转的边框。这里的问题可能是PropertyPath,因为我在那里得到了一个例外。(System.Windows.PropertyPath不能设置为System.Windows.Media.RotateTransform类型)欢迎任何想法,谢谢你的帮助。

1 个答案:

答案 0 :(得分:3)

试试Storyboard.TargetProperty="(UIElement.RenderTransform).(RotateTransform.Rotation)"

您始终可以通过在Blend中构建示例动画来验证语法。