扩展和自定义工具窗口

Visual Studio 提供了多种不同类型的窗口,例如工具窗口、文档窗口和对话框窗口。 其他窗口(如 “属性 ”窗口、 “输出 ”窗口和 “任务列表 ”窗口)是工具窗口的类型。

工具窗口

Visual Studio 工具窗口通常是非基于文件的只读窗口。 在此示例中,它们不同于文档窗口,这些窗口以读写模式显示文件。 工具箱解决方案资源管理器属性窗口和 Web 浏览器是工具窗口的示例。

若要了解如何创建简单的工具窗口,请参阅 “添加工具”窗口

若要向 Visual Studio 注册工具窗口,请参阅 “注册工具”窗口

默认情况下,工具窗口是单实例,这意味着一次只能打开一个工具窗口实例。 打开单实例工具窗口后,它将保持打开状态,直到 IDE 关闭。 关闭单实例工具窗口时,只会更改其可见性。 还可以创建多实例工具窗口,以便可以同时打开窗口的多个实例。 有关详细信息,请参阅 “创建多实例工具”窗口

工具窗口可以是 动态的,这意味着无论何时应用相关的 UI 上下文,它们都可见。 使用自动可见性可以减少 IDE 中的窗口混乱。 有关详细信息,请参阅 “打开动态工具”窗口

工具窗口可以在文档框架中停靠、浮动或以选项卡形式显示。 工具窗口框架由 IDE 提供,用于控制大小、位置、停靠状态和其他持久性属性。 工具窗格显示内容。 默认大小和位置仅适用于首次打开工具窗口时;之后,工具窗口状态将保持。

工具窗口窗格可以托管 WPF 用户控件和支持工具栏。 可以重载Window 属性以返回托管控件的句柄。

你可以向工具窗口添加许多不同的功能。 例如,可以添加工具栏: 将工具栏添加到工具窗口 或快捷菜单: 在工具窗口中添加快捷菜单。 可以添加搜索控件,以便搜索工具窗口中的项目: 向工具窗口添加搜索

可以订阅工具窗口事件: 订阅事件

扩展现有工具窗口

可以将有关工具窗口的信息添加到新的 “选项” 页和 “属性” 页上的新设置,写入 “任务列表 ”和 “输出 ”窗口。 有关详细信息,请参阅 “扩展属性”、“任务列表”、“输出”和“选项”窗口

在 Visual Studio 扩展中,您应通过从 Microsoft.VisualStudio.PlatformUI.DialogWindow 派生类来创建模式对话框,这样就可以控制它们和 UI 的其余部分。 有关详细信息,请参阅 “创建和管理模式”对话框