forループを使用して、ある行から別の行にコントロールを移動するアニメーションを実装しようとしています。forループのアニメーションwpfコントロール
private void AnimateStoryBoard(int number)
{
Storyboard _currentStoryBoard = new Storyboard();
//Row Animation
Int32Animation newrowanimation = new Int32Animation();
newrowanimation.From = number;
newrowanimation.To = number+1;
newrowanimation.Duration = new TimeSpan(0, 0, 0, 0, 500);
Storyboard.SetTargetProperty(newrowanimation, new PropertyPath("(Grid.Row)"));
_currentStoryBoard.Children.Add(newrowanimation);
Storyboard.SetTarget(newrowanimation, myrectangle);
_currentStoryBoard.Begin();
}
と、私はこれを実行すると、私は今
for (int i = 0; i < 10; i++)
{
AnimateStoryBoard(i);
}
を使用して、それを呼び出していますが、私は、アニメーションは、1〜2、その後2〜3その後、3から4 ... 9-10に行きたいです。しかし、アニメーションは直接9と10にスキップします。
また、XAMLでこれを行うことはできますか?ここの番号10は単なる例です。コードビハインドから番号を取得する必要があります。変化し続ける。
次のアニメーションを開始する前に、前のアニメーションが終了するのを待つことはありません。これにより、最後のアニメーションがそのまま残ります。ループ内でアニメーションが終了するのを待つ必要があります –
これは以前に質問した質問とまったく同じです:https://stackoverflow.com/questions/44212995/repeating-storyboard-animation-using-for-loop 。質問を削除して再投稿しないでください。 **あなたが最初に投稿した質問を修正してください。** –