にストーリーボードとパスを使用してアニメーション化する方法 - このためだから、私はこのようなグリッドのまわりで私の長方形のボックスを移動しようとしていますC#の
を、私はストーリーボードを使用しています。
私はDoubleAnimationを使用して、私のクラスの1つで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#の初心者ですので、これが愚かであれば気にしないでください。
ありがとうございました!