0
假設我有兩個動畫方法AnimateHorizontally和AnimateVertically這樣在WPF中,我怎樣才能同時使用不同的故事板動畫不同的對象?
public void AnimateHorizontally(FrameworkElement element, double XMoveStart, double XMoveEnd, int milli)
{
BackEase eEase = new BackEase();
Storyboard sb = new Storyboard();
DoubleAnimation daX = new DoubleAnimation(XMoveStart, XMoveEnd, new Duration(new TimeSpan(0, 0, 0, 0, milli)));
daX.EasingFunction = eEase;
Storyboard.SetTargetProperty(daX, new PropertyPath("(Canvas.Left)"));
sb.Children.Add(daX);
element.BeginStoryboard(sb);
}
public void AnimateVertically(FrameworkElement element, double YMoveStart, double YMoveEnd, int milli)
{
ElasticEase eEase = new ElasticEase();
Storyboard sb = new Storyboard();
DoubleAnimation daY = new DoubleAnimation(YMoveStart, YMoveEnd, new Duration(new TimeSpan(0, 0, 0, 0, milli)));
daY.EasingFunction = eEase;
Storyboard.SetTargetProperty(daY, new PropertyPath("(Canvas.Top)"));
sb.Children.Add(daY);
element.BeginStoryboard(sb);
}
當我應用它上的物體A,它從XMoveStart和XMoveEnd水平移動。如果我有一個對象B,並且我想讓對象B應用ElasticEase並垂直移動。
對象A和B上的動畫應該同時啓動並且流暢,我該怎麼做?
只需通過調用
AnimateVertically(A)
AnimateHorizontally(B)
它不工作,那光滑,似乎他們不是同時進行的。任何人都可以幫忙我不必使用Storyboard,如果有其他一些動畫方法可以完成這個工作,我也可以使用它們。