AdvancedLauncher.Tools.Extensions.ElementExtensions.TransformElementToElement C# (CSharp) Метод

TransformElementToElement() публичный статический Метод

public static TransformElementToElement ( this @this, Point pt, UIElement target ) : Point
@this this
pt Point
target System.Windows.UIElement
Результат Point
        public static Point TransformElementToElement(this UIElement @this, Point pt, UIElement target)
        {
            // Find the HwndSource for this element and use it to transform
            // the point up into screen coordinates.
            HwndSource hwndSource = (HwndSource)PresentationSource.FromVisual(@this);
            pt = hwndSource.TransformDescendantToClient(pt, @this);
            pt = hwndSource.TransformClientToScreen(pt);

            // Find the HwndSource for the target element and use it to
            // transform the rectangle from screen coordinates down to the
            // target elemnent.
            HwndSource targetHwndSource = (HwndSource)PresentationSource.FromVisual(target);
            pt = targetHwndSource.TransformScreenToClient(pt);
            pt = targetHwndSource.TransformClientToDescendant(pt, target);

            return pt;
        }