public static void BeginAnimationAngle(this UIElement element, double from, double to, double duration = 1000, Action <UIElement> Completed = null, Action <Storyboard> init = null) { var tran = element.GetTransform <RotateTransform>(); if (tran == null) { return; } element.BegionDoubleStoryBoard(from, to, duration / 1000.0, "(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)", Completed, init); }
public static void BeginAnimationAngle(this UIElement element, double toAngle, double duration = 1000) { var tran = element.GetTransform <RotateTransform>(); if (tran == null) { return; } DoubleAnimation xd = new DoubleAnimation(toAngle, TimeSpan.FromMilliseconds(duration)); tran.BeginAnimation(RotateTransform.AngleProperty, xd); }
public static void BeginAnimationSkew(this UIElement element, double toAngleX, double toAngleY, double duration = 1000) { var tran = element.GetTransform <SkewTransform>(); if (tran == null) { return; } DoubleAnimation d1 = new DoubleAnimation(toAngleX, TimeSpan.FromMilliseconds(duration)); DoubleAnimation d2 = new DoubleAnimation(toAngleY, TimeSpan.FromMilliseconds(duration)); tran.BeginAnimation(SkewTransform.AngleXProperty, d1); tran.BeginAnimation(SkewTransform.AngleYProperty, d2); }
public static void BeginAnimationScale(this UIElement element, double scaleX, double scaleY, double duration = 1000) { var tran = element.GetTransform <ScaleTransform>(); if (tran == null) { return; } DoubleAnimation xd = new DoubleAnimation(scaleX, TimeSpan.FromMilliseconds(duration)); DoubleAnimation yd = new DoubleAnimation(scaleY, TimeSpan.FromMilliseconds(duration)); tran.BeginAnimation(ScaleTransform.ScaleXProperty, xd); tran.BeginAnimation(ScaleTransform.ScaleYProperty, yd); }
public static void BeginAnimationXY(this UIElement element, double toX, double toY, double duration = 1000) { var tran = element.GetTransform <TranslateTransform>(); if (tran == null) { return; } DoubleAnimation xd = new DoubleAnimation(toX, TimeSpan.FromMilliseconds(duration)); DoubleAnimation yd = new DoubleAnimation(toY, TimeSpan.FromMilliseconds(duration)); tran.BeginAnimation(TranslateTransform.XProperty, xd); tran.BeginAnimation(TranslateTransform.YProperty, yd); }
/// <summary> /// Prepares the element. /// </summary> /// <param name="element"> /// The element. /// </param> /// <returns> /// The prepare element. /// </returns> private static bool PrepareElement(UIElement element) { element.GetTransform<CompositeTransform>(TransformCreationMode.CreateOrAddAndIgnoreMatrix); return true; }