擴充 SharePoint 專案項目
如果您要將功能加入至 Visual Studio 中已安裝的 SharePoint 專案項目類型時,請建立專案項目擴充功能。 例如,您可以在 Visual Studio 中建立內建 [事件接收器] 或 [清單定義] 專案項目的擴充功能,或您可以建立自訂專案項目類型的擴充功能。 您也可以建立所有類型 SharePoint 專案項目的擴充功能。
擴充 SharePoint 專案項目的工作
若要擴充專案項目,請組建 Visual Studio 擴充功能組件,以實作 ISharePointProjectItemTypeExtension 介面。 如需詳細資訊,請參閱 HOW TO:建立 SharePoint 專案項目擴充功能。
當您擴充專案項目時,您也可以將下列功能加入至專案項目:
將捷徑功能表項目加入至專案項目。 在 [方案總管] 中以滑鼠右鍵按一下專案項目,功能表項目就會出現。 如需詳細資訊,請參閱 HOW TO:將捷徑功能表項目加入至 SharePoint 專案項目擴充功能。
將自訂屬性加入至專案項目。 當在 [方案總管] 中選取專案項目時,這個屬性就會出現在 [屬性] 視窗中。 如需詳細資訊,請參閱 HOW TO:將屬性加入至 SharePoint 專案項目擴充功能。
如需示範如何建立、部署和測試專案項目擴充功能的逐步解說,請參閱逐步解說:擴充 SharePoint 專案項目類型。
了解專案項目擴充功能和專案項目執行個體之間的關聯性
當您建立專案項目擴充功能時,Visual Studio 會在將相關類型的專案項目加入至 SharePoint 專案時載入擴充功能。 例如,如果您建立 [事件接收器] 專案項目的擴充功能,則當使用者將 [事件接收器] 專案項目加入至專案時,Visual Studio 會載入擴充功能。 Visual Studio 會針對相關專案項目類型的所有執行個體,使用您的擴充功能中相同的執行個體。 在前述範例中,如果使用者將第二個 [事件接收器] 專案項目加入至專案,則會使用擴充功能的相同執行個體來自訂第二個專案項目。
若要存取正在擴充的專案項目類型執行個體,請在您的 ISharePointProjectItemTypeExtension.Initialize 方法實作中,處理 projectItemType 參數的其中一個 ISharePointProjectItemEvents 事件。 例如,若要判斷何時將正在擴充的專案項目加入至專案,請處理 ProjectItemAdded 事件。 如需詳細資訊,請參閱 HOW TO:建立 SharePoint 專案項目擴充功能。
SharePoint 專案項目的識別項
每一個 SharePoint 專案項目都有對應的字串識別項。 您必須知道專案項目的識別項,才能執行下列工作:
建立專案項目的擴充功能。 在此情況下,您必須將要擴充之專案項目的識別項傳遞至 SharePointProjectItemTypeAttribute 的建構函式。 托要建立所有專案項目類型的擴充功能,請傳遞 * 字串值。
以程式設計方式將專案項目加入至專案。 在此情況下,您必須將專案項目的識別項傳遞至 ISharePointProjectItemCollection.Add 方法。
下表列出 Visual Studio 2010 內包含的 SharePoint 專案項目識別項。
專案項目名稱 |
字串識別項 |
---|---|
商務資料目錄模型 |
Microsoft.VisualStudio.SharePoint.BusinessDataConnectivity |
內容類型 |
Microsoft.VisualStudio.SharePoint.ContentType |
事件接收器 |
Microsoft.VisualStudio.SharePoint.EventHandler |
空元素 |
Microsoft.VisualStudio.SharePoint.GenericElement |
清單定義 內容類型中的清單定義 |
Microsoft.VisualStudio.SharePoint.ListDefinition |
清單執行個體 |
Microsoft.VisualStudio.SharePoint.ListInstance |
模組 |
Microsoft.VisualStudio.SharePoint.Module |
循序工作流程 狀態機器工作流程 |
Microsoft.VisualStudio.SharePoint.Workflow |
網站定義 |
Microsoft.VisualStudio.SharePoint.SiteDefinition |
視覺 Web 組件 |
Microsoft.VisualStudio.SharePoint.VisualWebPart |
Web 組件 |
Microsoft.VisualStudio.SharePoint.WebPart |
工作流程關聯表單 |
Microsoft.VisualStudio.SharePoint.WorkflowAssociation |