问候,
我想将子窗口停靠在父窗口旁边。如果我移动父窗口,也应该移动子窗口。下面的图片应该解释我想要实现的目标:
http://img689.imageshack.us/img689/1305/childdockedwindow.jpg
有谁可以帮助我吗。我正在用WPF写作。有没有人知道如何做到这一点?
答案 0 :(得分:1)
处理主窗口上的Window.LocationChanged
事件和Window.SizeChanged
事件。当这些事件中的任何一个触发时,计算子窗口的新位置。
这是一个想法:
var mainWindow = ...;
var childWindow = ...;
var handler = new EventHandler(() =>
{
childWindow.Top = mainWindow.Top;
childWindow.Left = mainWindow.Left + mainWindow.Width;
});
mainWindow.LocationChanged += handler;
mainWindow.SizeChanged += handler;
当子窗口不再需要停靠或不再需要时,您可能还需要从两个事件中删除handler
的代码。