C# 当窗口非常近时如何对齐窗口

C# 当窗口非常近时如何对齐窗口,c#,wpf,windows,C#,Wpf,Windows,我有一个屏幕上有一些小窗口的应用程序。我想将它们彼此对齐,所以当我将其中一个移动到足够近的位置时,它将自动与另一个对齐。帮助我定位和调整它们的大小。 当没有父窗口时,如何知道其他窗口的位置?即使它们是不同的进程(应用程序),也可能知道它吗?我不完全确定你的意思,但下面的技巧是我用于动态布局的,它让我完全控制任何东西,你只需使用它,就可以轻松获得两个窗口之间的距离。 此代码是从windows phone应用程序复制的,但很容易理解 width = Convert.ToInt32(W

我有一个屏幕上有一些小窗口的应用程序。我想将它们彼此对齐,所以当我将其中一个移动到足够近的位置时,它将自动与另一个对齐。帮助我定位和调整它们的大小。
当没有父窗口时,如何知道其他窗口的位置?即使它们是不同的进程(应用程序),也可能知道它吗?

我不完全确定你的意思,但下面的技巧是我用于动态布局的,它让我完全控制任何东西,你只需使用它,就可以轻松获得两个窗口之间的距离。 此代码是从windows phone应用程序复制的,但很容易理解

        width = Convert.ToInt32(Window.Current.Bounds.Width);//gets window width
        height = Convert.ToInt32(Window.Current.Bounds.Height);// gets window height
        double dist Math.Abs(Btn1.GetValue(Canvas.LeftProperty) - Btn2.GetValue(Canvas.LeftProperty) + Btn2.Width);

注:前两行只是为了在每次移动和调整大小时保持正确的比例,您可以使其与窗口大小成比例。

我不完全确定您的意思,但以下技巧是我用于动态布局的,它让我完全控制任何东西,你只需要玩一下它,你就可以很容易地得到两扇窗户之间的距离。 此代码是从windows phone应用程序复制的,但很容易理解

        width = Convert.ToInt32(Window.Current.Bounds.Width);//gets window width
        height = Convert.ToInt32(Window.Current.Bounds.Height);// gets window height
        double dist Math.Abs(Btn1.GetValue(Canvas.LeftProperty) - Btn2.GetValue(Canvas.LeftProperty) + Btn2.Width);
注意,前两行只是为了在每次移动中保持正确的比例,并调整大小,您可以使其与窗口大小成比例