private UIElement GetAccentedParent(DependencyObject d)
        {
            if (FocusedElement == null)
            {
                return(null);
            }

            return(FocusedElement.TraverseUpVisual()
                   .Where(x => FocusAccentAdorner.GetAccented(x))
                   .OfType <UIElement>().FirstOrDefault());
        }
        private void FocusAccentAdornerDecorator_Loaded(object sender, RoutedEventArgs e)
        {
            Adorner = new FocusAccentAdorner(Child);

            Adorner.SetBinding(FocusAccentAdorner.OverlayBackgroundProperty, this, nameof(OverlayBackground));
            Adorner.SetBinding(FocusAccentAdorner.OverlayOpacityProperty, this, nameof(OverlayOpacity));
            Adorner.SetBinding(FocusAccentAdorner.AccentBackgroundProperty, this, nameof(AccentBackground));
            Adorner.SetBinding(FocusAccentAdorner.AccentBorderProperty, this, nameof(AccentBorder));

            AdornerLayer.Add(Adorner);
        }