Sdílet prostřednictvím


Postupy: Definování typu položky projektu SharePoint

Definujte typ položky projekt, pokud chcete vytvořit vlastní položku projektu služby SharePoint. Další informace naleznete v tématu Definování vlastní typy položek projektu SharePoint.

Pro definování typu položky projektu SharePoint

  1. Vytvořte projekt knihovny tříd.

  2. Přidejte odkazy do následujících sestavení:

    • Microsoft.VisualStudio.SharePoint

    • System.ComponentModel.Composition

  3. Vytvořit třídu, která implementuje ISharePointProjectItemTypeProvider rozhraní.

  4. Přidejte následující atributy do třídy:

    • System.ComponentModel.Composition.ExportAttribute. Tento atribut umožňuje vyhledat a načíst Visual Studio vaše ISharePointProjectItemTypeProvider provedení. Předat ISharePointProjectItemTypeProvider typu konstruktor atributu.

    • SharePointProjectItemTypeAttribute. V definici typu položky projektu tento atribut určuje identifikátor řetězce pro novou položku projektu. Doporučujeme použít formát Název společnosti.Název funkce směřujících k zajištění, že všechny položky projektu mají jedinečný název.

    • SharePointProjectItemIconAttribute. Tento atribut určuje na ikonu zobrazenou pro tuto položku projekt v Průzkumníku řešení. Tento atribut je volitelný; není-li použit ve vaší třídě, Visual Studio zobrazí výchozí ikonu pro tuto položku projekt. Nastavíte-li tento atribut, předejte plně kvalifikovaný název ikony nebo rastrový obrázek, který je vložen do vašeho sestavení.

  5. Vaše implementace metody InitializeType používá členy parametru projectItemTypeDefinition pro definování chování typu položky projektu. Tento parametr je objekt ISharePointProjectItemTypeDefinition, který poskytuje přístup k událostem definovaným v rozhraní ISharePointProjectItemEvents a ISharePointProjectItemFileEvents. Chcete-li získat přístup k určité instanci vašeho typu položky projektu, zpracovávejte události ISharePointProjectItemEvents, jako jsou například ProjectItemAdded a ProjectItemInitialized.

Příklad

Následující příklad kódu demonstruje definování jednoduchý typ položky projektu. Tento typ položky projektu zapisuje zprávu do okna Výstup a okna Seznam chyb při přidání položky projektu tohoto typu do projektu.

Imports System
Imports System.ComponentModel.Composition
Imports Microsoft.VisualStudio.SharePoint

Namespace Contoso.ExampleProjectItemType

    <Export(GetType(ISharePointProjectItemTypeProvider))> _
    <SharePointProjectItemType("Contoso.ExampleProjectItemType")> _
    <SharePointProjectItemIcon("ExampleProjectItemType.ProjectItemIcon.ico")> _
    Friend Class ExampleProjectItemType
        Implements ISharePointProjectItemTypeProvider

        Private Sub InitializeType(ByVal projectItemTypeDefinition As ISharePointProjectItemTypeDefinition) _
            Implements ISharePointProjectItemTypeProvider.InitializeType
            projectItemTypeDefinition.Name = "ExampleProjectItemType"
            projectItemTypeDefinition.SupportedDeploymentScopes = _
                SupportedDeploymentScopes.Site Or SupportedDeploymentScopes.Web
            projectItemTypeDefinition.SupportedTrustLevels = SupportedTrustLevels.All
            AddHandler projectItemTypeDefinition.ProjectItemAdded, AddressOf ProjectItemAdded
        End Sub

        Private Sub ProjectItemAdded(ByVal Sender As Object, ByVal e As SharePointProjectItemEventArgs)
            Dim Message As String = String.Format("An example project item named {0} was added to the {1} project.", _
                e.ProjectItem.Name, e.ProjectItem.Project.Name)
            e.ProjectItem.Project.ProjectService.Logger.WriteLine(Message, LogCategory.Message)
        End Sub
    End Class
End Namespace
using System;
using Microsoft.VisualStudio.SharePoint;
using System.ComponentModel.Composition;

namespace Contoso.ExampleProjectItemType
{
    [Export(typeof(ISharePointProjectItemTypeProvider))]
    [SharePointProjectItemType("Contoso.ExampleProjectItemType")]
    [SharePointProjectItemIcon("ExampleProjectItemType.ProjectItemIcon.ico")]
    internal class ExampleProjectItemType : ISharePointProjectItemTypeProvider
    {
        public void InitializeType(ISharePointProjectItemTypeDefinition projectItemTypeDefinition)
        {
            projectItemTypeDefinition.Name = "ExampleProjectItemType";
            projectItemTypeDefinition.SupportedDeploymentScopes =
                SupportedDeploymentScopes.Site | SupportedDeploymentScopes.Web;
            projectItemTypeDefinition.SupportedTrustLevels = SupportedTrustLevels.All;
            projectItemTypeDefinition.ProjectItemAdded += projectItemTypeDefinition_ProjectItemAdded;
        }

        void projectItemTypeDefinition_ProjectItemAdded(object sender, SharePointProjectItemEventArgs e)
        {
            string message = String.Format("An example project item named {0} was added to the {1} project.",
                e.ProjectItem.Name, e.ProjectItem.Project.Name);
            e.ProjectItem.Project.ProjectService.Logger.WriteLine(message, LogCategory.Message);
        }
    }
}

V tomto příkladu je pomocí projektu služby SharePoint zapsána zpráva do okna Výstup a do okna Seznam chyb. Další informace naleznete v tématu Pomocí služby SharePoint projektu.

Probíhá kompilace kódu

Tento příklad vyžaduje odkazy na následující sestavení:

  • Microsoft.VisualStudio.SharePoint

  • System.ComponentModel.Composition

Nasazení položky projektu

Chcete-li povolit ostatním vývojářům použít vaše položky projektu, vytvořte šablonu projektu nebo šablonu položky projektu. Další informace naleznete v tématu Vytváření položek projektu SharePoint položku šablony a šablony aplikace Project.

Chcete-li nasadit položku projektu, vytvořte balíček Visual Studio rozšíření (VSIX) pro sestavení, šablonu a všechny další soubory, které chcete distribuovat s položkou projektu. Další informace naleznete v tématu Nasazování rozšíření pro nástroje služby SharePoint v aplikaci Visual Studio.

Viz také

Úkoly

Podrobné pokyny: Vytvoření položky projektu vlastní akce položku šablony, část 1

Další zdroje

Definování vlastní typy položek projektu SharePoint

Vytváření položek projektu SharePoint položku šablony a šablony aplikace Project

Podrobné pokyny: Vytvoření položky projektu sloupec webu pomocí šablony projektu, část 1

Postupy: Přidání vlastnosti do vlastního typu položky projektu SharePoint

Postupy: Přidat vlastní typ položky projektu SharePoint položky místní nabídky