wpf 移動動畫


private void moveTo(Point deskPoint, Control ell, double space)

//deskPoint: 控件要移動到的位置 , ell :你要移動的空間 , space : 設置移動的時間片(關系到控件移動的速度)

        {  
            Point curPoint = new Point();
            curPoint.X = Canvas.GetLeft(ell);
            curPoint.Y = Canvas.GetTop(ell);


            Storyboard storyboard = new Storyboard();   //創建Storyboard對象

            double lxspeed = space, lyspeed = space; //設置X方向 / Y方向 移動時間片

           //創建X軸方向動畫 

            DoubleAnimation doubleAnimation = new DoubleAnimation( 
              Canvas.GetLeft(ell), 
              deskPoint.X, 
              new Duration(TimeSpan.FromMilliseconds(lxspeed))
            );
            Storyboard.SetTarget(doubleAnimation, ell);
            Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("(Canvas.Left)"));
            storyboard.Children.Add(doubleAnimation);


            //創建Y軸方向動畫 


            doubleAnimation = new DoubleAnimation(
              Canvas.GetTop(ell),
              deskPoint.Y,
              new Duration(TimeSpan.FromMilliseconds(lyspeed))
            ); 
            Storyboard.SetTarget(doubleAnimation, ell);
            Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("(Canvas.Top)")); 
            storyboard.Children.Add(doubleAnimation); 



            //動畫播放 
            storyboard.Begin(); 
        }

【轉】https://blog.csdn.net/chr23899/article/details/38853417


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM