Beispiel #1
0
        internal FrameworkElement GetAdornerLayerHolderElement()
        {
            FrameworkElement   ret    = this as FrameworkElement;
            AdornerLayerHolder holder = GetAdornerLayerHolder(this);

            switch (holder)
            {
            case AdornerLayerHolder.Self:
                break;

            case AdornerLayerHolder.Parent:
                ret = VisualTreeHelper.GetParent(this) as FrameworkElement;
                break;

            case AdornerLayerHolder.View:
                while (ret != null)
                {
                    var p = VisualTreeHelper.GetParent(ret) as FrameworkElement;
                    if (p != null && p.Name == PlatesCC.MainPanelTemplatePartName)
                    {
                        break;
                    }
                    ret = p;
                }
                break;

            case AdornerLayerHolder.Screen:
                throw new NotSupportedException("AdornerLayerHolder.Screen");

            case AdornerLayerHolder.App:
                throw new NotSupportedException("AdornerLayerHolder.App");
            }

            if (ret == null)
            {
                throw new InvalidCastException("Wrong AdornerLayerHolderElement");
            }

            return(ret);
        }
Beispiel #2
0
 public static void SetAdornerLayerHolder(DependencyObject target, AdornerLayerHolder value)
 {
     target.SetValue(AdornerLayerHolderProperty, value);
 }
Beispiel #3
0
 public static void SetAdornerLayerHolder(DependencyObject target, AdornerLayerHolder value)
 {
     target.SetValue(AdornerLayerHolderProperty, value);
 }