我有一个AvalonDock DockingManager控件,带有一些子Anchorables(无文档)。如果这些Anchorables从主DockingManager浮动,则我知道它们仍然是DockingManager逻辑树的一部分。
但是,我从用户那里提出了一些要求,即通过“禁用”某些功能,浮动窗口与主窗口之间将更加独立:
当任何一个窗口(父母或孩子)聚焦时,所有窗口都被置于最前面
当父窗口最小化时,所有浮动子窗口也是如此。
我对如何做到这一点完全感到困惑,因为没有编辑AvalonDock源代码(我宁愿不提供此选项)。
有没有办法做这些事情之一?
最佳答案
将浮动窗口的属性所有者设置为null,以将其与其逻辑父级分离。
{
dockManager.LayoutUpdated += DockManager_OnLayoutUpdated;
}
private void DockManager_OnLayoutUpdated(object sender, EventArgs e)
{
foreach (var floatingWindow in dockManager.FloatingWindows)
{
if (floatingWindow.Owner != null)
{
floatingWindow.Owner = null;
}
}
}
关于wpf - Avalon Dock float anchor 固物可以更独立于 parent 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30667262/