2015-06-12 48 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; 
});