/// <summary> /// 切换场景动画 /// </summary> /// <param name="index"></param> private void StepAnimation(int index) { Thickness now = MainContent.Margin; Thickness target = MainContent.Margin; target.Left = -CONTENT_WIDTH * index; int time = (int)(Math.Sqrt(Math.Abs(target.Left - now.Left))) * 10; ThicknessAnimation animation = new ThicknessAnimation(now, target, new Duration(new TimeSpan(0, 0, 0, 0, time))); MainContent.BeginAnimation(Grid.MarginProperty, animation); }