에서 스토리 보드와 경로를 사용하여 애니메이션하는 방법 -이를 위해그래서,이 같은 그리드 주위에 내 직사각형 상자를 이동하려고 C#을
을, 나는 스토리 보드를 사용하고 있습니다.
DoubleAnimation을 사용하여 X 축과 Y 축의 상자를 내 클래스 중 하나로 이동합니다. MainWindow 클래스에서이 클래스를 호출합니다.
//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#의 초보자입니다. 바보 같다면 괜찮습니다.
감사합니다.