使用受管理的封裝架構實作專案型別 (C#)
管理套件架構 (MPF) 提供的 C# 類別您可以使用或繼承實作您自己的專案型別。 MPF 會實作許多介面 Visual Studio 所預期的專案類型,來提供,等到您只需實作其軟體的專案類型。
使用 MPF 專案的原始程式碼
管理套件架構專案 (MPFProj) 提供建立和管理新的專案系統的協助程式類別。 與 MPF 中的其他類別,不同的是專案的類別不會列入 Visual Studio 所隨附的組件。 相反地,在原始程式碼中提供專案類別專案: 視覺的 MPF Studio。
若要 VSPackage 方案中加入這個專案,請執行下列各項:
下載 MPFProj 檔案,以 MPFProjectDir。
在 MPFProjectDir\Dev10\Src\CSharp\ProjectBase.file,變更下列區段:
<!-- Provide a default value for $(ProjectBasePath) -->
<PropertyGroup>
<ProjectBasePath >MPFProjDir\Dev10\Src\CSharp</ProjectBasePath>
</PropertyGroup>
建立一個 VSPackage 專案。
卸載 VSPackage 專案。
藉由新增下列區塊前一個編輯 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>
儲存專案。
關閉並重新開啟 VSPackage 方案。
重新開啟 VSPackage 專案。 您應該會看到名為 ProjectBase 的新目錄。
將下列參考加入至 VSPackage 專案:
Microsoft.Build.Tasks.4.0
建置專案。
階層架構類別
下表摘要列出 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 |