Windows 8应用商店如何确定点是否在您的容器内

本文关键字:是否 应用 何确定 Windows | 更新日期: 2023-09-27 18:27:59

我正试图使用ManipulationDelta在画布上移动形状。它很有效,但我有一个问题,把它们放在画布上,进而放在屏幕上。我试图以某种方式确定画布的边界,以及它的X、Y是否仍在画布上。例如,当椭圆小于0时,我可以通过将Y设置为0来防止椭圆被拖离顶部。

        void Shape1_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
    {
        Ellipse shape = sender as Ellipse;
        TranslateTransform tt = shape.RenderTransform as TranslateTransform;
        tt.X += e.Delta.Translation.X;
        tt.Y += e.Delta.Translation.Y;
        if (tt.Y < 0)
            tt.Y = 0;
    }

问题是屏幕的分辨率不同,我无法确定边界。这是正确的方法吗?还是有更好的方法允许用户拖动项目,但将其保留在定义的区域内?

谢谢你能给我的任何帮助!

Windows 8应用商店如何确定点是否在您的容器内

如果画布的大小与屏幕(也称为窗口)相同,则可以检查Window.Current.Bounds以了解窗口的大小。