예제 #1
0
    public static void SetEnableAnimations(Border border, bool value)
    {
        var page = border.FindAncestorOfType <CompositionPage>();

        if (page == null)
        {
            border.AttachedToVisualTree += delegate { SetEnableAnimations(border, true); };
            return;
        }

        if (ElementComposition.GetElementVisual(page) == null)
        {
            return;
        }

        page.EnsureImplicitAnimations();
        if (border.GetVisualParent() is Visual visualParent &&
            ElementComposition.GetElementVisual(visualParent) is CompositionVisual compositionVisual)
        {
            compositionVisual.ImplicitAnimations = page._implicitAnimations;
        }
    }