命令、菜单和工具栏

菜单和工具栏是用户访问 VSPackage 中的命令的方式。 命令是完成任务的功能,例如打印文档、刷新视图或创建新文件。 菜单和工具栏是向用户呈现命令的便捷图形方法。 通常,相关命令聚集在同一菜单或工具栏上。

  • 菜单通常显示为在集成开发环境(IDE)或工具窗口顶部的一行中聚集的单字字符串。 菜单也可以显示为右键单击事件的结果,并称为该上下文中的快捷菜单。 单击后,菜单将展开以显示一个或多个命令。 单击命令时,可以执行包含其他命令的任务或启动子菜单。 一些已知的菜单名称是 “文件”、“ 编辑”、“ 视图”和 “窗口”。 有关详细信息,请参阅 扩展菜单和命令

  • 工具栏通常是按钮和其他控件的行,例如组合框、列表框、文本框和菜单控制器。 所有工具栏控件都与命令相关联。 单击工具栏按钮时,将激活其关联的命令。 工具栏按钮通常具有表示基础命令的图标,例如表示打印命令的打印机图标。 在下拉列表控件中,列表中的每个项都与不同的命令相关联。 菜单控制器是混合控件,其中控件的一侧是工具栏按钮,另一侧是向下箭头,在单击时显示其他命令。 有关详细信息,请参阅 向工具栏添加菜单控制器

  • 创建命令时,还必须为其创建事件处理程序。 事件处理程序确定命令何时可见或启用,允许修改其文本,并确保命令在激活时响应正确(“路由”。)。 在大多数情况下,IDE 使用 IOleCommandTarget 接口处理命令。 Visual Studio 中的命令以分层方式路由,从最内部的命令上下文开始,基于本地选择,并根据全局选择继续到最外部的上下文。 添加到主菜单的命令立即可用于脚本编写。 有关详细信息,请参阅 MenuCommands 与 OleMenuCommandsSelection 上下文对象

    若要定义新菜单和工具栏,必须在 Visual Studio 命令表 (.vsct) 文件中对其进行描述。 Visual Studio 包模板会为您创建此文件,以及支持您在模板中选择的命令、工具栏和编辑器所需的一切元素。 或者,可以使用此处所述的 XML 架构编写自己的 .vsct 文件: VSCT XML 架构参考

    有关使用 .vsct 文件的详细信息,请参阅 Visual Studio 命令表 (.vsct) 文件

    本节中的主题介绍了命令、菜单和工具栏在 VSPackages 中的工作原理。

本部分内容

命令表格式规范的深入说明。

描述基于 XML 的语法和命令表的编译器。

介绍预定义的命令、组、菜单和工具栏。

指定可供 Visual Studio IDE 使用的预定义菜单、命令和命令组。

说明如何设计命令。

提供命令指南。

介绍如何使命令可供 Visual Studio 使用。

介绍如何实现使用互操作程序集的命令。

介绍 VSPackage 中的命令路由。