C# 如何在C中使用带有故事板的路径设置动画#
所以,我试着把我的长方形盒子绕着网格移动,就像这样-C# 如何在C中使用带有故事板的路径设置动画#,c#,storyboard,C#,Storyboard,所以,我试着把我的长方形盒子绕着网格移动,就像这样- //Code to move Boxes 1-4 to first grid point in their path TranslateTransform moveTransform = new TranslateTransform(); moveTransform.X = 0; moveTransform.Y = 0; x.RenderTransform = m
//Code to move Boxes 1-4 to first grid point in their path
TranslateTransform moveTransform = new TranslateTransform();
moveTransform.X = 0;
moveTransform.Y = 0;
x.RenderTransform = moveTransform;
Storyboard s = new Storyboard();
DoubleAnimation Move1= new DoubleAnimation();
Move1.From = 0;
Move1.To = xPosition; // calculate correct offset here
Move1.Duration = new Duration(TimeSpan.FromSeconds(hops));
if (x==Box2)
{
Move1.BeginTime = TimeSpan.FromSeconds(5);//For Box 2, the first move will be across Y-Axis and hence X-Axis move will be delayed by 5 seconds.
}
else
{
Move1.BeginTime = TimeSpan.Zero;
}
Storyboard.SetTarget(Move1, x);
Storyboard.SetTargetProperty(Move1, new PropertyPath("(UIElement.RenderTransform).(X)"));
s.Children.Add(Move1);
为此,我使用了故事板
我正在使用DoubleAnimation在我的一个类中移动X轴和Y轴上的长方体。我从主窗口类调用这个类。但是,对于每一个方块和每一个回合,我必须创建一个新的双动画,指定偏移值、开始时间、持续时间等。如下-
//Code to move Boxes 1-4 to first grid point in their path
TranslateTransform moveTransform = new TranslateTransform();
moveTransform.X = 0;
moveTransform.Y = 0;
x.RenderTransform = moveTransform;
Storyboard s = new Storyboard();
DoubleAnimation Move1= new DoubleAnimation();
Move1.From = 0;
Move1.To = xPosition; // calculate correct offset here
Move1.Duration = new Duration(TimeSpan.FromSeconds(hops));
if (x==Box2)
{
Move1.BeginTime = TimeSpan.FromSeconds(5);//For Box 2, the first move will be across Y-Axis and hence X-Axis move will be delayed by 5 seconds.
}
else
{
Move1.BeginTime = TimeSpan.Zero;
}
Storyboard.SetTarget(Move1, x);
Storyboard.SetTargetProperty(Move1, new PropertyPath("(UIElement.RenderTransform).(X)"));
s.Children.Add(Move1);
我知道有一种方法可以定义从源到达目的地的路径,但我不确定如何做到这一点?此外,我不确定我在这里做的是不是最佳的方式
所以,我的问题是-
做这件事最好的方法是什么?如何定义动画的路径?
我是C#的新手,所以如果这听起来很愚蠢,请不要介意
谢谢大家! 我不需要使用path就可以做到这一点 对于每个动作,我都创建了一个新的双动画 所以对于左下右移动,我用 X轴、Y轴和X轴