Silverlight 旋转动画效果

第一种方式

xaml文件添加资源:

第一步:

 <UserControl.Resources>
        <Storyboard x:Key="RotationStoryboard1"  Storyboard.TargetName="BodyGridPlane" Storyboard.TargetProperty="RotationY">
            <DoubleAnimation BeginTime="00:00:00" Duration="00:00:01" From="0" To="360"></DoubleAnimation>
        </Storyboard>
    </UserControl.Resources>


Storyboard.TargetName="BodyGridPlane"设置要旋转的目标的Projection 例如:

第二步:

 <Border x:Name="bodypage"  Background="#77919191" BorderThickness="1" CornerRadius="5"
HorizontalAlignment="Left" VerticalAlignment="Bottom"
Margin="0,0,0,0" Padding="5" BorderBrush="Black" AllowDrop="True">
            <Border.Projection>
                <PlaneProjection x:Name="BodyGridPlane" RotationY="0"/>
            </Border.Projection>

</Border>


第三步:

var collapseAnimation = (Storyboard)Resources["RotationStoryboard1"];//获取故事板

collapseAnimation.Begin();//效果开始



第二种方式:(纯代码)

 /// <summary>
        /// </summary>
        /// <param name="Pprojection">关联旋转对象的project</param>
        /// <param name="Pconterline">旋转轴 RotationY代表旋转Y轴 RotationX代表旋转Z轴</param>
        /// <returns></returns>

 public void SetAction(Projection Pprojection, string Pconterline)
        {
            //代码编写一个故事板
            DoubleAnimation Ada = new DoubleAnimation();
            Storyboard.SetTargetProperty(Ada, new PropertyPath(Pconterline));--旋转Y轴  
            Storyboard.SetTarget(Ada, Pprojection);//关联旋转对象的project
            Ada.From = 0;//旋转开始角度
            Ada.To = 360;//旋转结束角度
            //da.Duration = new Duration(new TimeSpan(0, 0, 1));//设置旋转时长
            Ada.Duration = TimeSpan.FromSeconds(1); //时间1s  //设置旋转时长
            Ada.BeginTime = new TimeSpan(0, 0, 0);//设置旋转开始时间
            //da.RepeatBehavior = RepeatBehavior.Forever;//此代码设置可实现一直旋转
            Storyboard story = new Storyboard();//创建新故事板
            story.Children.Add(Ada);//故事板添加以上设置
            story.Begin();//开始实施

        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zkcharge

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值