【发布时间】:2018-01-18 06:41:59
【问题描述】:
我有两种类型的窗口:Main 和 Child。当我移动主窗口时,所有子窗口也必须移动。我所有的窗口都有样式None,所以我使用DragMove。对于移动的孩子,我使用 Main 的 LocationChange。如果我开始快速移动主窗口,孩子会延迟一些移动。我的窗口是一个接一个的,所以当快速移动主窗口时,会出现一些间隙。
我用这个问题
Move two WPF windows at once?
我怎样才能减少这种差距?
一些代码:
private void Grid_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
StickyWindow.ParentWndStartMove(this);
this.DragMove();
}
这里我把所有的孩子都搬走了
public static void ParentWndMove(Window parentWindow)
{
for (int i = 0; i < windowsToMove.Length; i++)
{
if (windowsToMove[i])
{
windows[i].Top += -(parentWindowPosition.Y - parentWindow.Top);
windows[i].Left += -(parentWindowPosition.X - parentWindow.Left);
}
}
parentWindowPosition.X = parentWindow.Left;
parentWindowPosition.Y = parentWindow.Top;
}
【问题讨论】:
-
可以分享代码吗?