我想實現一個動畫,我將控件從一行移動到另一個使用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 。不要刪除和重新發布問題。 **解決您最初發布的問題。** –