使用实现托管包的结构项目键入 (c#)

托管包框架 (MPF)提供可以使用或继承实现拥有项目类型的 c# 类。 MPF 实现 Visual Studio 需要一个项目类型提供的许多接口,从而使您可以集中精力实现项类型的特定。

使用 MPF 项目源代码

项目 (MPFProj) 托管包框架用于创建和管理新项目系统提供帮助器类。 不同于 MPF 的其他类,项类未包含在程序集中随 Visual Studio。 相反,项类提供作为源代码 MPF for Projects - Visual Studio

若要添加此项。 VSPackage 解决方案,请执行以下操作:

  1. 下载 MPFProj 文件添加到 MPFProjectDir。

  2. 在 MPFProjectDir\Dev10\Src\CSharp\ProjectBase .file 中,更改下列块:

<!-- Provide a default value for $(ProjectBasePath) -->
  <PropertyGroup>
    <ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>
  </PropertyGroup>
  1. 创建一个 VSPackage 项目。

  2. 卸载 VSPackage 项目。

  3. 通过添加以下编辑 VSPackage .csproj 文件块,其他 <Import> 块之前:

<Import Project="MPFProjectDir\Dev10\Src\CSharp\ProjectBase.files" />
  <PropertyGroup>
    <!--To specify a different registry root to register your package, uncomment the TargetRegistryRoot tag and specify a registry root in it.
    <TargetRegistryRoot></TargetRegistryRoot>-->
    <RegisterOutputPackage>true</RegisterOutputPackage>
    <RegisterWithCodebase>true</RegisterWithCodebase>
  </PropertyGroup>
  1. 保存项目。

  2. 关闭并重新打开 VSPackage 解决方案。

  3. 重新打开 VSPackage 项目。 您应看到名为 ProjectBase 的目录。

  4. 将下列引用添加到 VSPackage 项目:

    Microsoft.Build.Tasks.4.0

  5. 生成项目。

层次结构类

下表总结了项目层次结构。 MPFProj 的类。 有关更多信息,请参见 层次结构和选择

类名

Microsoft.VisualStudio.Package.HierarchyNode

Microsoft.VisualStudio.Package.ProjectNode

Microsoft.VisualStudio.Package.ProjectContainerNode

Microsoft.VisualStudio.Package.FileNode

Microsoft.VisualStudio.Package.FolderNode

Microsoft.VisualStudio.Package.ReferenceContainerNode

Microsoft.VisualStudio.Package.ReferenceNode

Microsoft.VisualStudio.Package.ProjectReferenceNode

Microsoft.VisualStudio.Package.ComReferenceNode

Microsoft.VisualStudio.Package.AssemblyReferenceNode

Microsoft.VisualStudio.Package.BuildDependency

文档处理类

下表列出了支持文件处理的 MPF 的类。 有关更多信息,请参见 打开和保存项目项

类名

Microsoft.VisualStudio.Package.DocumentManager

Microsoft.VisualStudio.Package.FileDocumentManager

配置和输出类型

下表列出了允许项类型支持多个配置的 MPF 的类,例如调试和发布和项目输出的集合。 有关更多信息,请参见 管理的配置选项。

类名

Microsoft.VisualStudio.Package.ConfigProvider

Microsoft.VisualStudio.Package.ProjectConfig

Microsoft.VisualStudio.Package.BuildableProjectConfig

Microsoft.VisualStudio.Package.OutputGroup

Microsoft.VisualStudio.Package.ProjectElement

自动化支持类

下表列出了支持自动化的 MPF 的类,以便项类型的用户可以编写宏和外接程序。

类名

Microsoft.VisualStudio.Package.Automation.OAProject

Microsoft.VisualStudio.Package.Automation.OANavigableProjectItems

Microsoft.VisualStudio.Package.Automation.OAProjectItems

Microsoft.VisualStudio.Package.Automation.OAProjectItem

Microsoft.VisualStudio.Package.Automation.OANestedProjectItem

属性类

下表列出了允许项类型添加特性用户在属性浏览器可以浏览和修改的 MPF 的类。

类名

Microsoft.VisualStudio.Package.LocalizableProperties

Microsoft.VisualStudio.Package.NodeProperties

Microsoft.VisualStudio.Package.FileNodeProperties

Microsoft.VisualStudio.Package.ProjectNodeProperties

Microsoft.VisualStudio.Package.FolderNodeProperties

Microsoft.VisualStudio.Package.ReferenceNodeProperties