2015-06-12 44 views
4

相关的my earlier question about making floating windows independent from the main DockingManager,这里有一个类似的,但希望更简单的一个:可以使AvalonDock浮动窗口不被“始终在最上面”?

能AvalonDock浮动窗口进行不为“总在最前”的主要DockingManager窗口?

我正在翻查AvalonDock source code试图找到一种方法来做到这一点,但我还没有找到任何有效的工具。

理想情况下,我追求的效果与Visual Studio的Tools > Options > Environment > Tabs and Windows > Floating tool windows always stay on top of the main window(可用于至少VS2013和VS2015)相同。

回答

0

我一直在寻找相同的答案。

为了使浮动窗口始终不在对接管理器之上,您需要从每个浮动窗口中移除Owner。

dockingManager有FloatingWindows属性,你可以这样做如下:

dockingManager.FloatingWindows.ToList().ForEach(floatingWindow => 
{ 
    floatingWindow.Owner = null; 
    floatingWindow.ShowInTaskbar = true; 
});