教程 - 创建第一个扩展:Hello World

此 Hello World 示例将引导你完成为 Visual Studio 创建第一个扩展。 本教程介绍如何向 Visual Studio 添加新命令。

在此过程中,你将了解如何:

在本示例中,使用 Visual C# 添加一个名为“Say Hello World!”的自定义菜单按钮,如下所示:

Screenshot showing a custom menu command.

注意

本文适用于 Windows 上的 Visual Studio。 对于 Visual Studio for Mac,请参阅 Visual Studio for Mac 中的扩展性演练

先决条件

在开始之前,请确保已安装 Visual Studio 扩展开发 工作负载,其中包括 VSIX 模板和示例代码。

注意

可以使用任何版本的 Visual Studio(Community、Professional 或 Enterprise)来创建 Visual Studio 扩展性项目。

创建扩展性项目

  1. 从“文件”菜单中选择“新建”>“项目” 。 搜索“vsix”并选择 C# VSIX 项目,然后选择“下一步”。

  2. 输入“HelloWorld”作为“项目名称”,然后选择“创建”

Screenshot showing creating a new VSIX project.

现在,你应该能够在“解决方案资源管理器”中看到 HelloWorld 项目

添加自定义命令

  1. 如果选择 .vsixmanifest 清单文件,可以查看哪些选项是可更改的,例如说明、作者和版本。

  2. 右键单击项目(而非解决方案)。 在上下文菜单上,选择“添加”,然后选择“新建项”

  3. 选择“扩展性”部分,然后选择“命令”

  4. 在底部的“名称”字段中,输入文件名,如 Command.cs

Screenshot showing creating a custom command.

你的新命令文件将显示在“解决方案资源管理器”中。 在 “资源” 节点下,可以找到与命令相关的其他文件。 例如,你可以通过此处的 PNG 文件修改图像。

修改源代码

此时,命令和按钮文本是自动生成的,而不是这样有趣的。 如果要进行更改,可以修改 VSCT 文件和 CS 文件。

  • VSCT 文件是可以重命名命令的位置,并定义它们在 Visual Studio 命令系统中的位置。 浏览 VSCT 文件时,请注意说明 VSCT 代码控件的每个部分的注释。

  • 你可以在 CS 文件中定义操作,如单击处理程序。

  1. 解决方案资源管理器中,找到扩展 VSPackage 的 VSCT 文件。 在本例中,它称为 HelloWorldPackage.vsct

  2. ButtonText 参数更改为 Say Hello World!

      ...
      <Button guid="guidCommandPackageCmdSet" id="CommandId" priority="0x0100" type="Button">
        <Parent guid="guidCommandPackageCmdSet" id="MyMenuGroup" />
        <Icon guid="guidImages" id="bmpPic1" />
        <Strings>
            <ButtonText>Say Hello World!</ButtonText>
        </Strings>
      </Button>
      ...
    
  3. 返回到“解决方案资源管理器”,找到 Command.cs 文件。 在 Execute 方法中,将字符串 messagestring.Format(..) 更改为 Hello World!

      ...
      private void Execute(object sender, EventArgs e)
      {
        ThreadHelper.ThrowIfNotOnUIThread();
        string message = "Hello World!";
        string title = "Command";
    
        // Show a message box to prove we were here
        VsShellUtilities.ShowMessageBox(
            this.ServiceProvider,
            message,
            title,
            OLEMSGICON.OLEMSGICON_INFO,
            OLEMSGBUTTON.OLEMSGBUTTON_OK,
            OLEMSGDEFBUTTON.OLEMSGDEFBUTTON_FIRST);
      }
      ...
    

确保保存对每个文件所做的更改。

运行脚本

现在,你可以在 Visual Studio 试验实例中运行源代码。

步骤 1. 按 F5 运行“启动调试”命令。 此命令将生成项目并启动调试器,启动名为“试验实例”的 Visual Studio 新实例

步骤 2. 在“试验实例”的“工具”菜单上,单击“Say Hello World!”

Screenshot showing that the custom command displays a message box.

此时应会看到新自定义命令的输出,在本例中,屏幕中心的对话框会为你提供 Hello World! 消息。

后续步骤

现在你已了解使用 Visual Studio 扩展性的基本知识,可以在此处了解更多信息: