如何在UWP中获取PointToScreen

adm*_*tDK 2 wpf xaml uwp

在WPF中这样的东西会告诉我边界左上角的位置:

        var point = myBorder.PointToScreen(new Point());
Run Code Online (Sandbox Code Playgroud)

如何在UWP中获得相同的内容?我找不到任何方法来获得它.

谢谢 :)

Elv*_*SFT 7

您可以通过以下步骤获取UIElement的屏幕坐标:

  1. 通过以下代码获取UIElement相对于当前应用程序窗口的坐标:

    GeneralTransform transform = myBorder.TransformToVisual(Window.Current.Content);
    Point coordinatePointToWindow = transform.TransformPoint(new Point(0, 0));
    
    Run Code Online (Sandbox Code Playgroud)
  2. 获取Rect当前应用程序窗口的信息:

    Rect rect = Window.Current.CoreWindow.Bounds;
    
    Run Code Online (Sandbox Code Playgroud)
  3. 计算你的UIElement的坐标:

    var left = coordinatePointToWindow.X + rect.Left;
    var top = coordinatePointToWindow.Y + rect.Top;
    
    Run Code Online (Sandbox Code Playgroud)