CustomAction, élément

S’applique à : SharePoint 2016 | SharePoint Foundation 2013 | | SharePoint Online SharePoint Server 2013

Définit une extension pour l’interface utilisateur, telle qu’un bouton sur une barre d’outils ou un lien sur une page de paramètres du site.

Définition

<CustomAction
  RequiredAdmin = "Delegated | Farm | Machine"
  ControlAssembly = "Text"
  ControlClass = "Text"
  ControlSrc = "Text"
  Description = "Text"
  FeatureId = "Text"
  GroupId = "Text"
  Id = "Text"
  ImageUrl = "Text"
  Location = "Text"
  RegistrationId = "Text"
  RegistrationType = "Text"
  RequireSiteAdministrator = "TRUE" | "FALSE"
  Rights = "Text"
  RootWebOnly = "TRUE" | "FALSE"
  ScriptSrc = "Text"
  ScriptBlock = "Text"
  Sequence = "Integer"
  ShowInLists = "TRUE" | "FALSE"
  ShowInReadOnlyContentTypes = "TRUE" | "FALSE"
  ShowInSealedContentTypes = "TRUE" | "FALSE"
  Title = "Text"
  UIVersion = "Integer">
</CustomAction>

Éléments et attributs

Les sections suivantes décrivent les attributs, les éléments enfants et les éléments parents.

Attributs

Attribut Description
**RequiredAdmin** Facultatif **Text**. Spécifie les droits d’administration requis pour l’application de l’action personnalisée. Cette valeur permet d'ajuster les liens dans l’Administration centrale. Les valeurs possibles sont les suivantes :
  • **Delegated**

  • **Farm**

  • **Machine**

**ControlAssembly** Facultatif **Text**. Spécifie l'assembly d'un contrôle qui prend en charge l'action personnalisée.
**ControlClass** Facultatif **Text**. Spécifie une classe de contrôle qui prend en charge l'action personnalisée.
**ControlSrc** Facultatif **Text**. Spécifie l’URL relative du fichier .ascx qui sert de source pour l’action personnalisée, par exemple . "~/_controltemplates/myCustomAction.ascx"
**Description** Facultatif **Text**. Spécifie une description plus longue pour l'action qui est exposée comme une info-bulle ou une sous-description de l'action.
**FeatureId** Facultatif **Text**. Identifie le Composant fonctionnel associé à l’action personnalisée.
**GroupId** Facultatif **Text**. Identifie un groupe d’actions qui contient l’action, par exemple. "SiteManagement" S’il est contenu dans un groupe d’actions personnalisé, la valeur de l’attribut **GroupId** doit être égale à l’ID de groupe de l’élément CustomActionGroup .

Pour obtenir la liste des ID de groupe d’actions personnalisées par défaut utilisés dans Microsoft SharePoint Foundation, voir Emplacements et ID d’actions personnalisées par défaut.
**Id** Facultatif **Text**. Spécifie un identificateur unique pour l’action personnalisée. L’ID peut être un GUID, ou il peut s’agir d’un terme unique, par exemple. "HtmlViewer"
**ImageUrl** Facultatif **Text**. Spécifie un lien relatif du serveur virtuel vers une image qui présente une icône de l'élément.
**Location** Facultatif **Text**. Spécifie l’emplacement de cette action personnalisée, par exemple . "Microsoft.SharePoint.SiteSettings"

Si l’élément **CustomAction** contient un **CommandUIExtension** élément enfant, doit **Location** commencer par « CommandUI.Ribbon ». Pour obtenir la liste des emplacements par défaut utilisés avec le ruban Serveur, consultez Emplacements de personnalisation du ruban serveur par défaut.

Si l’action personnalisée est un élément de menu ou un bouton de barre d’outils, les options possibles sont **EditControlBlock**, **NewFormToolbar**, **DisplayFormToolbar**et **EditFormToolbar**.

S’il est contenu dans un groupe d’actions personnalisé, la valeur de l’attribut **Location** doit être égale à l’emplacement de l’élément CustomActionGroup .

Pour obtenir la liste des emplacements d’actions personnalisées par défaut utilisés dans SharePoint Foundation, voir Emplacements et ID des actions personnalisées par défaut.

**RegistrationId** Facultatif **Text**. Spécifie l’identificateur du type de contenu de liste ou d’élément auquel cette action est associée, ou le type de fichier ou l’identificateur de programmation (**ProgID**).
**RegistrationType** Facultatif **Text**. Spécifie la pièce jointe d'inscription pour une action par élément. Les valeurs admises sont les suivantes :
  • **None**

  • **List**

  • **ContentType**

  • **ProgId**

  • **FileType**

**RequireSiteAdministrator** Facultatif **Boolean**. **TRUE** pour spécifier que l’élément doit être affiché uniquement si l’utilisateur est un administrateur de site ; sinon, **FALSE**. L’utilisation de l’attribut **RequireSiteAdministrator** pour le menu déroulant des commandes SharePoint Foundation associées aux éléments de liste n’est pas prise en charge.
**Rights** Facultatif **Text**. Spécifie un ensemble de droits dont l’utilisateur doit disposer pour que le lien soit visible, par exemple . "ViewListItems,ManageAlerts" S’il n’est pas spécifié, l’action apparaît toujours dans la liste des actions. Pour spécifier plusieurs droits, séparez les valeurs à l’aide de virgules. L’ensemble des droits est regroupé logiquement en fonction de **AND** la logique, ce qui signifie qu’un utilisateur doit disposer de tous les droits spécifiés pour voir une action. Pour obtenir la liste des valeurs possibles, voir Microsoft.SharePoint.SPBasePermissions.
**RootWebOnly** Facultatif **Boolean**. **TRUE** pour déployer l’action personnalisée uniquement sur les sites web racines. Cet attribut s’applique aux actions personnalisées dans une solution en bac à sable.
**ScriptSrc** Facultatif **Text**. Spécifie un fichier qui contient un script à exécuter. Cet attribut s’applique uniquement lorsque l’attribut a la **Location** valeur **ScriptLink**.
**ScriptBlock** Facultatif **Text**. Spécifie un bloc de script à exécuter. Cet attribut s’applique uniquement lorsque l’attribut a la **Location** valeur **ScriptLink**.
**Sequence** Facultatif **Integer**. Spécifie la priorité du classement des actions.
**ShowInLists** Cet attribut est désapprouvé et ne doit pas être utilisé.

Facultatif **Boolean**. **TRUE** si l’action personnalisée s’affiche uniquement pour les listes de la page pour la gestion des types de contenu. La valeur par défaut est **FALSE**.

**ShowInReadOnlyContentTypes** Facultatif **Boolean**. **TRUE** si l’action personnalisée s’affiche uniquement pour les types de contenu en lecture seule sur la page pour la gestion des types de contenu. La valeur par défaut est **FALSE**.
**ShowInSealedContentTypes** Facultatif **Boolean**. **TRUE** si l’action personnalisée s’affiche uniquement pour les types de contenu scellés sur la page pour la gestion des types de contenu. La valeur par défaut est **FALSE**.
**Title** Obligatoire **Text**. Spécifie la description utilisateur final de cette action.
**UIVersion** Facultatif **Integer**. Spécifie la version de l’interface utilisateur dans laquelle cette action personnalisée doit être répertoriée.

Éléments enfants

CommandUIExtension

UrlAction

Éléments parents

Éléments

Occurrences

Minimum : 1

Maximum : pas de limite

Remarques

Vous pouvez utiliser l'élément CustomAction pour ajouter des contrôles ASP.NET standard et des contrôles utilisateur (par exemple, des zones de texte ou des cases d'option) en tant qu'actions personnalisées dans les barres d'outils. Toutefois, vous pouvez uniquement ajouter des contrôles instanciant des éléments de menu aux menus déroulants des barres d’outils ; vous ne pouvez pas ajouter de composants WebPart ou de contrôles arbitraires.

Exemple

L’exemple suivant fait partie d’une fonctionnalité qui remplace un bouton sur le ruban serveur.

    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
      <CustomAction Id="Ribbon.Library.Actions.ReplacementButton"
        Location="CommandUI.Ribbon"
        RegistrationId="101"
        RegistrationType="List"
        Title="Replace a Ribbon Button">
        <CommandUIExtension>
          <CommandUIDefinitions>
            <CommandUIDefinition
              Location="Ribbon.Library.Actions.ConnectToClient">
                 <Button Id="Ribbon.Library.Actions.ConnectToClient.ReplacementButton"
                   Command="ReplacementButtonCommand"
                   Image16by16="Insert an image URL here."
                   Image32by32="Insert an image URL here."
                   LabelText="Replaced Button"
                   TemplateAlias="o2" />
            </CommandUIDefinition>
          </CommandUIDefinitions>
          <CommandUIHandlers>
            <CommandUIHandler
              Command="ReplacementButtonCommand"
              CommandAction="javascript:alert('This button has been replaced.');" />
          </CommandUIHandlers>
        </CommandUIExtension>
      </CustomAction>
    </Elements>

Voir aussi