教程 - 编写自己的第一个扩展:Hello World

适用范围:yesVisual Studio noVisual Studio for Mac noVisual Studio Code

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

在此过程中,你将了解如何执行以下操作:

对于此示例,你将使用 Visual C# 添加名为“Say Hello World!”的自定义菜单按钮,如下所示:

Hello World 命令

注意

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

先决条件

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

注意

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

创建扩展性项目

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

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

新建项目

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

添加自定义命令

步骤 1。 如果选择 .vsixmanifest 清单文件,可以查看哪些选项可更改,例如描述、作者和版本。

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

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

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

自定义命令

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

修改源代码

此时,命令和按钮文本是自动生成的,比较生硬。 如果要进行更改,可以修改 VSCT 文件和 CS 文件。

  • 你可以在 VSCT 文件中对命令进行重命名以及定义这些命令在 Visual Studio 命令系统中的位置。 当你浏览 VSCT 文件时,会注意到注释,其中解释了 VSCT 代码的每个部分所控制的内容。

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

步骤 1。 在“解决方案资源管理器”中,找到扩展 VS 包的 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!” 。

最终结果

应会看到新自定义命令的输出,在本例中,屏幕中心显示Hello World!消息的对话框。

后续步骤

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