SharePoint プロジェクトの拡張

SharePoint プロジェクトのプロジェクト レベルの機能をカスタマイズするには、プロジェクトの拡張機能を作成します。たとえば、カスタム プロジェクト プロパティを追加したり、ユーザーが Visual Studio で SharePoint ソリューションを開発したときに発生するプロジェクト レベルのイベントに応答したりすることができます。

プロジェクトの拡張機能の作成

プロジェクト項目を拡張するには、ISharePointProjectExtension インターフェイスを実装する Visual Studio 拡張機能アセンブリを構築します。詳細については、「方法: SharePoint プロジェクトの拡張機能を作成する」を参照してください。

プロジェクト拡張機能を作成するときに、SharePoint プロジェクトに次の機能も追加できます。

  • ショートカット メニュー項目の追加。メニュー項目は、ノードを右クリックするか、選択し、Shift + F10キーの選択して [ソリューション エクスプローラー] のSharePointプロジェクト ノードのショートカット メニューを開いたときに表示されます。詳細については、「方法: ショートカット メニュー項目を SharePoint プロジェクトに追加する」を参照してください。

  • カスタム プロパティの追加。プロパティは [プロパティ] のウィンドウで **[ソリューション エクスプローラー]**でSharePointプロジェクトを選択するときに表示されます。詳細については、「方法: SharePoint プロジェクトにプロパティを追加する」を参照してください。

プロジェクトの拡張機能の作成、配置、およびテストの方法を示すチュートリアルについては、「チュートリアル: SharePoint プロジェクトの拡張機能の作成」を参照してください。

プロジェクト拡張機能とプロジェクト インスタンスとの関係について

プロジェクトの拡張機能を作成するとき、Visual Studio で任意の種類の SharePoint プロジェクトが開かれると、拡張機能が読み込まれます。Visual Studio には、リスト定義、コンテンツ タイプ、イベント レシーバーなど、いくつかの SharePoint プロジェクト テンプレートが含まれます。ただし、SharePoint プロジェクトの種類は 1 つだけです。[新しいプロジェクト] ダイアログ ボックスに表示されるプロジェクトの種類は、1 つ以上の SharePoint プロジェクト項目を 1 つのバンドルにまとめるテンプレートだけです。SharePoint プロジェクトの種類が 1 つしかないため、1 つのプロジェクトに対して作成される拡張機能がすべての SharePoint プロジェクトに適用されます。たとえば、コンテンツ タイプ プロジェクトにのみ適用される拡張機能を作成することはできません。

特定のプロジェクト インスタンスにアクセスするには、ISharePointProjectExtension.Initialize メソッドの実装で、projectService パラメーターの ISharePointProjectEvents イベントの 1 つを処理します。たとえば、SharePoint プロジェクトがいつソリューションに追加されるかを決定するには、ProjectAdded イベントを処理します。詳細については、「方法: SharePoint プロジェクトの拡張機能を作成する」を参照してください。

参照

処理手順

チュートリアル: SharePoint プロジェクトの拡張機能の作成

概念

方法: SharePoint プロジェクトの拡張機能を作成する

方法: ショートカット メニュー項目を SharePoint プロジェクトに追加する

方法: SharePoint プロジェクトにプロパティを追加する

SharePoint プロジェクト項目の種類の定義

SharePoint プロジェクト項目の拡張

SharePoint のパッケージ化と配置の拡張

SharePoint プロジェクト システムの拡張