如果您和我一样使用多显示器办公,那您大概率会渐渐爱上 Visual Studio 中的悬浮工具窗口与文档。将解决方案资源管理器、调试器或是代码文件拖拽到第二块(甚至第三块)屏幕上,能够大幅提升工作效率。
但这些悬浮窗口的运行表现,一直存在些许兼容性问题。

默认情况下,浮动窗口由 Visual Studio 主窗口“托管”。这意味着它们不会在 Windows 任务栏中显示为独立按钮,最小化集成开发环境主窗口时浮动窗口会随之隐藏,并且浮动窗口会始终置顶显示在所有窗口之上 —— 即便您并不需要该效果。
对于部分工作流程而言,这正是您想要的效果。但在另一些场景下,很快就会让人感到厌烦。
幸运的是,有一项鲜为人知的设置,能够让您精准控制 Visual Studio 对浮动窗口的控制程度。
设置路径如下:Tools > Options > Environment > Windows > Floating Windows。
您将会看到此对话框:

该下拉菜单标注有“These floating windows are owned by the main window”,并提供三个选项:
- None
- Tool Windows (默认)
- Documents and Tool Windows
仅更改这一项设置,就能彻底改变您使用悬浮窗口的操作方式。
我最常用的场景:PowerToys FancyZones
将该设置与微软 PowerToys 及其出色的分区布局工具 FancyZones 功能搭配使用时,效果尤为出色。
我喜欢将其设置为无,再通过 FancyZones 在多块显示器上自定义窗口布局。这样一来,我所有的悬浮工具窗口和文档窗口都会像常规应用窗口一样正常运行:它们会显示在任务栏中,即便我最小化主 Visual Studio 窗口也能保持可见,还能精准吸附到我设置的 FancyZones 分区布局里,不会再频繁自动置顶。
使用起来自然流畅得多,也让我拥有了一直梦寐以求的简洁多屏办公布局。
何时选择各个选项
- None:最高独立化。每个程序都会拥有独立任务栏条目与完整窗口运行特性,非常适合搭配 PowerToys、使用多显示器办公的重度用户。
- Tool Windows:一款理想的折中方案 —— 让文档自由悬浮,同时工具窗口固定依附于集成开发环境。
- Documents and Tool Windows:沿用经典的 Visual Studio 操作模式。
专业技巧:将此操作与在任意工具窗口标题栏上使用 Ctrl+双击 的快捷方式结合使用,实现极速切换界面布局,无需重启软件。
您之前用过这项设置吗?您更倾向哪个选项:None、Tool Windows,还是默认设置?欢迎在评论区留言告诉我。我一直很好奇,其他开发者都是如何搭建多显示器工作区的。
Happy coding!
原文链接:https://devblogs.microsoft.com/visualstudio/take-full-control-of-your-floating-windows-in-visual-studio/

