protected override void StartHideAnimation(UIElement element, AnimationContext context) { var visual = ElementCompositionPreview.GetElementVisual(element); var compositor = visual.Compositor; var fadeOutAnimation = compositor.CreateScalarKeyFrameAnimation(); fadeOutAnimation.InsertExpressionKeyFrame(0.0f, "this.CurrentValue"); fadeOutAnimation.InsertKeyFrame(1.0f, 0.0f); fadeOutAnimation.Duration = TimeSpan.FromMilliseconds(DefaultAnimationDurationInMs * AnimationSlowdownFactor); var batch = compositor.CreateScopedBatch(CompositionBatchTypes.Animation); visual.StartAnimation("Opacity", fadeOutAnimation); batch.End(); batch.Completed += delegate { visual.Opacity = 1.0f; OnHideAnimationCompleted(element); }; }
protected override bool HasHideAnimationCore(UIElement element, AnimationContext context) { return(true); }
protected override bool HasShowAnimationCore(UIElement element, AnimationContext context) { return(HasShowAnimationValue); }
public CallInfo(int index, AnimationContext context) { Index = index; Context = context; }