Partager via


Menu, élément

définit un élément de menu. Ce sont les six types de menus : Contexte, menu, MenuController, MenuControllerLatched, toolbar, et ToolWindowToolbar.

<Menu guid=”guidMyCommandSet” id=”MyCommand” priority=”0x100” type=”button”>
  <Parent>... </Parent>
  <CommandFlag>... </CommandFlag>
  <Strings>... </Strings>
</Menu>

Attributs et éléments

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

Attributs

Attribut

Description

GUID

Obligatoire. Le GUID de l'identificateur de commande de GUID/ID.

id

Obligatoire. ID de l'identificateur de commande de GUID/ID.

priority

Facultatif. Une valeur numérique qui indique la position relative d'un menu à un groupe de menus.

ToolbarPriorityInBand

Facultatif. Une valeur numérique qui indique la position relative d'une barre d'outils dans une bande lorsque la fenêtre est ancrée.

type

Facultatif. Valeur énumérée qui spécifie le genre d'élément.

Si une table, le type par défaut est menu.

Contexte

Un menu contextuel qui s'affiche lorsqu'un utilisateur clique avec le bouton droit sur une fenêtre. un menu contextuel a les caractéristiques suivantes :

  • N'utilise pas les champs de parent et de priorité lorsque le menu doit être affiché sous forme de menu contextuel.

  • peut être utilisé comme sous-menu et également comme menu contextuel. Dans ce cas, les champs groupid et de priorité sont respectés.

  • N'est pas disponible.

Un menu contextuel s'affiche uniquement lorsque les conditions suivantes sont remplies :

  • La fenêtre qui l'héberge est affiché.

  • Un gestionnaire de la souris dans le VSPackage détecte un bouton droit sur la fenêtre puis appelle une méthode qui gère la commande.

  • Le menu contextuel s'affiche en appelant la méthode d' ShowContextMenu (l'approche recommandée) ou la méthode d' ShowContextMenu .

Menu

fournit un menu déroulant. Un menu déroulant possède les caractéristiques suivantes :

  • respecte le parent dans sa définition.

  • Doit avoir un groupe parent, ou un CommandPlacement dans un groupe.

  • Peut être un sous-menu dans tout autre type de menu.

  • S'affiche automatiquement chaque fois que son menu parent est affiché.

  • Ne nécessite pas d'implémentation d'aucun code d'un VSPackage pour la faire affiche.

MenuController

Fournit un menu déroulant de bouton partagé, qui est généralement utilisé dans les barres d'outils. Un menu de MenuController possède les caractéristiques suivantes :

  • Doit être contenu dans un autre menu via le parent ou le CommandPlacement.

  • respecte le parent dans sa définition.

  • peut avoir n'importe quel genre de menu en tant que son parent.

  • Est automatiquement mis à chaque fois que son menu parent est affiché.

  • Ne nécessite pas de prise en charge de programmation pour afficher le menu affiche.

Une commande dans le menu de bouton partagé est affichée sur le bouton de menu. La commande affiche une des caractéristiques suivantes :

  • Il s'agit de la dernière commande utilisée si la commande est toujours affichée et activée.

  • C'est la première commande affiche.

MenuControllerLatched

fournit un menu déroulant de bouton partagé pour lequel une commande peut être spécifiée comme sélection par défaut en marquant la commande comme verrouillée.

Une commande est verrouillée une commande qui est marquée dans le menu comme sélectionnée, en général en affichant une coche. Une commande peut être marquée comme verrouillé si elle a la balise d'OLECMDF_LATCHED définie sur celui-ci dans une implémentation de la méthode d' QueryStatus d'interface d' IOleCommandTarget . Un menu de MenuControllerLatched possède les caractéristiques suivantes :

  • Doit être contenu dans un autre menu via un groupe parent ou un CommandPlacement.

  • respecte le parent dans sa définition.

  • peut avoir n'importe quel genre de menu en tant que son parent.

  • Est disponible à chaque fois que son menu parent est affiché.

  • Ne nécessite pas de prise en charge de programmation pour afficher le menu affiche.

Une commande dans le menu de bouton partagé est affichée sur le bouton de menu. La commande affiche une des caractéristiques suivantes :

  • C'est la première ordre affiché qui est verrouillée.

  • C'est la première commande affiche.

Barre d'outils

fournit une barre d'outils. Une barre d'outils possède les caractéristiques suivantes :

  • ignore le parent dans sa définition.

  • Ne peut pas être lancé à un sous-menu d'un groupe, même pas à l'aide de CommandPlacement.

  • Peut toujours être affiché en cliquant sur barres d'outils dans le menu d' Afficher .

  • Peut être affichée à l'aide de VisibilityItem.

  • Ne nécessite pas de code à créer. Pour obtenir un exemple illustrant la création d'une barre d'outils, consultez Procédure pas - à - pas : Ajouter une barre d'outils à l'IDE.

ToolWindowToolbar

Fournit une barre d'outils qui est associée à une fenêtre Outil spécifique, comme une barre d'outils est attachée à l'environnement de développement.

  • ignore le parent dans sa définition.

  • Ne peut pas être lancé à un sous-menu d'un groupe, même pas à l'aide de CommandPlacement.

  • S'affiche uniquement lorsque la fenêtre Outil qui héberge la barre d'outils s'affiche et le VSPackage ajoute explicitement la barre d'outils à la fenêtre Outil. Cela est généralement fait lorsque la fenêtre Outil est créée en obtenant la propriété de l'hôte de barre d'outils (comme représenté par l'interface d' IVsToolWindowToolbarHost ) du frame de fenêtre Outil et en appelant la méthode d' AddToolbar .

Condition

Facultatif. Consultez Attributs conditionnels de schéma XML VSCT.

Éléments enfants

Élément

Description

Parent

Facultatif. l'élément parent de l'élément de menu.

CommandFlag

Obligatoire. Consultez CommandFlag, élément. Les valeurs valides de CommandFlag pour un menu sont les suivantes :

AlwaysCreate

DefaultDocked

DefaultInvisible. cette balise n'affecte pas l'affichage des barres d'outils.

DontCache

DynamicVisibility. cette balise n'affecte pas l'affichage des barres d'outils.

IconAndText

NoCustomize

NotInTBList

NoToolbarClose

TextChanges

TextIsAnchorCommand

Chaînes

Obligatoire. Consultez Strings, élément. l'élément enfant d' ButtonText doit être défini.

Annotation

commentaire facultatif.

Éléments parents

Élément

Description

Menus, élément

définit tous les menus qu'un VSPackage implémente.

Exemple

<Menu guid="cmdGuidWidgetCommands" id="menuIDEditWidget"
  priority="0x0002" type="Menu">
  <Parent guid="cmdSetGuidWidgetCommands" id="groupIDFileEdit">
  <CommandFlag>AlwaysCreate</CommandFlag>
  <Strings>
    <ButtonText>Edit Widget</ButtonText>
  </Strings>
</Menu>

Voir aussi

Autres ressources

Tableau de commande Visual Studio (. fichiers de Vsct)