Partager via


CommandSet, classe

Représente un sous-ensemble des commandes qui sont disponibles dans les menus d'un langage spécifique au domaine.Méthodes overrides dans YourLanguageCommandSet pour modifier la façon dont ces commandes sont traitées.

Cette API n'est pas conforme CLS. 

Hiérarchie d'héritage

System.Object
  System.MarshalByRefObject
    Microsoft.VisualStudio.Modeling.Shell.CommandSetLibrary
      Microsoft.VisualStudio.Modeling.Shell.CommandSet

Espace de noms :  Microsoft.VisualStudio.Modeling.Shell
Assembly :  Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (dans Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)

Syntaxe

'Déclaration
<CLSCompliantAttribute(False)> _
Public MustInherit Class CommandSet _
    Inherits CommandSetLibrary
[CLSCompliantAttribute(false)]
public abstract class CommandSet : CommandSetLibrary

Le type CommandSet expose les membres suivants.

Constructeurs

  Nom Description
Méthode protégée CommandSet Initialise une nouvelle instance de la classe CommandSet.

Début

Propriétés

  Nom Description
Propriété protégée CurrentDocData (Hérité de CommandSetLibrary.)
Propriété protégée CurrentDocumentSelection (Hérité de CommandSetLibrary.)
Propriété protégée CurrentDocView Obtient la vue pour la fenêtre de document actif.
Propriété protégée CurrentModelingDocView (Hérité de CommandSetLibrary.)
Propriété protégée CurrentSelection (Hérité de CommandSetLibrary.)
Propriété protégée MenuService (Hérité de CommandSetLibrary.)
Propriété protégée MonitorSelection (Hérité de CommandSetLibrary.)
Propriété protégée ServiceProvider (Hérité de CommandSetLibrary.)
Propriété protégée SingleDocumentSelection (Hérité de CommandSetLibrary.)
Propriété protégée SingleSelection (Hérité de CommandSetLibrary.)

Début

Méthodes

  Nom Description
Méthode protégée CanDeleteSelectedItems Retourne la valeur true si les éléments sélectionnés peuvent être supprimées. (Hérité de CommandSetLibrary.)
Méthode publique CreateObjRef Essentiel pour la sécurité. Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant. (Hérité de MarshalByRefObject.)
Méthode protégée DeleteSelectedItems Supprimez les éléments sélectionnés. (Hérité de CommandSetLibrary.)
Méthode publique Equals Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetHashCode Sert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publique GetLifetimeService Essentiel pour la sécurité. Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject.)
Méthode protégée GetMenuCommands Affiche les commandes dans le menu contextuel. (Substitue CommandSetLibrary.GetMenuCommands().)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique Initialize Initialisez le jeu de commandes.Appels GetMenuCommands et caches le résultat. (Hérité de CommandSetLibrary.)
Méthode publique InitializeLifetimeService Essentiel pour la sécurité. Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject.)
Méthode protégée IsAnyDocumentSelectionCompartment True si les éléments de l'ordinateur dans la liste de sélection est un compartiment. (Hérité de CommandSetLibrary.)
Méthode protégée IsAnyDocumentSelectionMoveableHostShape True si les éléments de l'ordinateur dans la liste de sélection est une forme hôte mobile, qui ne peut pas être supprimée. (Hérité de CommandSetLibrary.)
Méthode protégée IsAnyDocumentSelectionUndeletable True si des éléments de l'de forme dans la liste de sélection ne peuvent pas être supprimés. (Hérité de CommandSetLibrary.)
Méthode protégée IsCurrentDiagramEmpty True si le diagramme n'a aucun enfant. (Hérité de CommandSetLibrary.)
Méthode protégée IsDiagramSelected True si le diagramme est sélectionné. (Hérité de CommandSetLibrary.)
Méthode protégée IsExpandableShape Vérifie si un utilisateur peut se développer la forme pour indiquer des propriétés de domaine.
Méthode protégée IsSingleDocumentSelection True s'il n'existe qu'un seul élément sélectionné sur le document actif. (Hérité de CommandSetLibrary.)
Méthode protégée IsSingleSelection True s'il n'existe qu'un seul élément sélectionné dans la fenêtre de document actif ou la fenêtre Outil. (Hérité de CommandSetLibrary.)
Méthode protégée MemberwiseClone() Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.)
Méthode protégée MemberwiseClone(Boolean) Crée une copie superficielle de l'objet MarshalByRefObject actuel. (Hérité de MarshalByRefObject.)
Méthode protégée ProcessOnMenuDeleteCommand Appelé lorsque l'utilisateur clique sur la commande de suppression ou appuie sur la touche Suppr.Supprime un élément.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuEditCompartmentItemCommand Appelé lorsque l'utilisateur clique sur la commande de menu Edition sur un élément dans une forme de compartiment.Passe à l'état de modification de texte.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuExpandCollapseCommand Appelé lorsque l'utilisateur se développe ou réduit une liste de propriétés qui est assignée à une forme.
Méthode protégée ProcessOnMenuPageSetupCommand Ouvre la boîte de dialogue de mise en page.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuPrintCommand Ouvre la boîte de dialogue d'impression.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuPrintPreviewCommand Ouvre la fenêtre d'aperçu avant impression.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuRerouteLineCommand Restaure la position par défaut d'un connecteur entre deux formes.Substituez cette méthode pour modifier ce comportement.
Méthode protégée ProcessOnMenuResetDecoratorLocationCommand Substituez cette méthode pour traiter la commande de menu d'emplacement de décorateur de réinitialisation.
Méthode protégée ProcessOnMenuResetDecoratorSizeCommand Substituez cette méthode pour traiter la commande de menu de taille de décorateur de réinitialisation.
Méthode protégée ProcessOnMenuSelectAllCommand Appelé lorsque l'utilisateur clique sur le sélectionner la totalité de la commande dans le menu Edition, ou appuie sur CTRL-Un.Sélectionne toutes les formes dans un diagramme.Substituez la méthode pour modifier ce comportement.
Méthode protégée ProcessOnStatusDeleteCommand Détermine si la commande de suppression apparaît dans le menu contextuel.Appelé lorsque l'utilisateur clique avec le bouton droit sur du diagramme.
Méthode protégée ProcessOnStatusEditCompartmentItemCommand Détermine si la commande de modification apparaît dans le menu contextuel.
Méthode protégée ProcessOnStatusExpandCollapseCommand Détermine si la commande de développer ou de réduire apparaît dans le menu contextuel.Appelé lorsque l'utilisateur clique avec le bouton droit sur du diagramme.
Méthode protégée ProcessOnStatusPageSetupCommand Détermine si la commande de mise en page apparaît dans le menu Fichier.Appelé lorsque l'utilisateur clique sur le menu Fichier pendant que le diagramme est actif.
Méthode protégée ProcessOnStatusPrintCommand Détermine si la commande d'impression apparaît dans le menu Fichier.Appelé lorsque l'utilisateur clique sur le menu Fichier pendant que le diagramme est actif.
Méthode protégée ProcessOnStatusPrintPreviewCommand Détermine si la commande d'aperçu avant impression apparaît dans le menu.Appelé lorsque l'utilisateur clique sur le menu Fichier pendant que le diagramme est actif.
Méthode protégée ProcessOnStatusRerouteLineCommand Détermine si la commande de la redirection apparaît dans le menu contextuel.Appelé lorsque l'utilisateur clique avec le bouton droit sur du diagramme.
Méthode protégée ProcessOnStatusResetDecoratorLocationCommand Détermine si la commande d'emplacement de décorateur de congé apparaît dans le menu contextuel.Appelé lorsque l'utilisateur clique avec le bouton droit sur du diagramme.
Méthode protégée ProcessOnStatusResetDecoratorSizeCommand Détermine si la commande de taille de décorateur de réinitialisation apparaît dans le menu.Appelé lorsque l'utilisateur clique avec le bouton droit sur du diagramme.
Méthode protégée ProcessOnStatusSelectAllCommand Détermine si le sélectionner que que la commande apparaît dans le menu.Appelé lorsque l'utilisateur clique sur le menu Edition pendant que le diagramme est actif.
Méthode publique ToString Retourne une chaîne qui représente l'objet actif. (Hérité de Object.)

Début

Notes

Vous pouvez modifier la façon dont votre DÉSOLÉ répond à certaines commandes de menu.Les commandes que que vous pouvez modifier comprennent les commandes dans le menu contextuel, et certaines commandes sur le fichier et les menu Edition.

Dans votre projet de DslPackage, vous rechercherez un fichier généré appelé CommandSet.cs, contenant une déclaration partielle d'une classe appelée <YourLanguageName>CommandSet.Pour modifier le comportement des commandes de menu standardes, ajoutez un autre fichier avec une définition partielle de la même classe.

Dans cette classe, vous pouvez substituer les méthodes définies dans la classe de base.

[!REMARQUE]

Vérifiez que l'espace de noms dans votre nouveau fichier est identique à l'espace de noms dans le CommandSet.cs généré.Dans votre nouveau fichier, lorsque vous tapez « substitution » dans la déclaration de classe, vous devez voir une liste des méthodes que vous pouvez substituer.

Chaque commande possède un ProcessOnStatus…méthode et un ProcessOnMenu…Méthode .Le ProcessOnStatus…la méthode détermine si la commande apparaît dans le menu de bouton droit.Définissez la propriété Visible du paramètre de commande pour déterminer si la commande est visible, et pour définir la propriété Enabled pour déterminer si l'élément de menu est activé ou greyed.

Le ProcessOnMenu…la méthode effectue la commande lorsque l'utilisateur clique sur l'élément de menu.

[!REMARQUE]

Vous pouvez définir des commandes supplémentaires dans le fichier de Commands.vsct.

Pour plus d'informations, consultez Comment : ajouter une commande au menu contextuel.

Exemples

Ce fichier est ajouté au projet de DslPackage.Il empêché des utilisateurs du langage DÉSOLÉ de supprimer le plusieurs élément à la fois.

// In the DslPackage project.
namespace Company.Language1 // Check this is correct after creating the file.
{
  internal partial class Language1CommandSet // Same class as the generated class.
  {
    /// <summary>
    /// Called when user right-clicks on the diagram or clicks the Edit menu.
    /// </summary>
    /// <param name="command"></param>
    protected override void ProcessOnStatusDeleteCommand(System.ComponentModel.Design.MenuCommand command)
    {
      if (this.CurrentSelection.Count > 1)
      {
        // If user has selected more than one item, Delete is greyed out.
        command.Enabled = false;
      }
      else
      {
        // Otherwise, default behavior.
        base.ProcessOnStatusDeleteCommand(command);
      }
    }
    /// <summary>
    /// Called when user presses Delete key or clicks the Delete command on a menu.
    /// </summary>
    protected override void ProcessOnMenuDeleteCommand()
    {
      // Allow users to delete only one thing at a time.
      if (this.CurrentSelection.Count <= 1)
      {
        base.ProcessOnMenuDeleteCommand();
      }
    }
  }
}

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.VisualStudio.Modeling.Shell, espace de noms

Autres ressources

Comment : ajouter une commande au menu contextuel