SharePoint プロジェクトのプロジェクト レベルの機能をカスタマイズするには、プロジェクトの拡張機能を作成します。 たとえば、カスタム プロジェクト プロパティを追加したり、ユーザーが Visual Studio で SharePoint ソリューションを開発したときに発生するプロジェクト レベルのイベントに応答したりすることができます。
プロジェクトの拡張機能の作成
プロジェクト項目を拡張するには、ISharePointProjectExtension インターフェイスを実装する Visual Studio 拡張機能アセンブリを構築します。 詳細については、「方法: SharePoint プロジェクトの拡張機能を作成する」を参照してください。
プロジェクト拡張機能を作成するときに、SharePoint プロジェクトに次の機能も追加できます。
ショートカット メニュー項目の追加。 このメニュー項目は、ソリューション エクスプローラーで 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 プロジェクトにプロパティを追加する