Classe CommandSet
Rappresenta un subset dei comandi disponibili nei menu di un linguaggio specifico di dominio. Eseguire l'override di metodi in YourLanguageCommandSet per modificare la modalità di elaborazione di questi comandi.
Questa API non è conforme a CLS.
Gerarchia di ereditarietà
System.Object
System.MarshalByRefObject
Microsoft.VisualStudio.Modeling.Shell.CommandSetLibrary
Microsoft.VisualStudio.Modeling.Shell.CommandSet
Spazio dei nomi: Microsoft.VisualStudio.Modeling.Shell
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0.dll)
Sintassi
'Dichiarazione
<CLSCompliantAttribute(False)> _
Public MustInherit Class CommandSet _
Inherits CommandSetLibrary
[CLSCompliantAttribute(false)]
public abstract class CommandSet : CommandSetLibrary
Il tipo CommandSet espone i seguenti membri.
Costruttori
Nome | Descrizione | |
---|---|---|
![]() |
CommandSet | Inizializza una nuova istanza della classe CommandSet. |
In alto
Proprietà
Nome | Descrizione | |
---|---|---|
![]() |
CurrentDocData | (Ereditato da CommandSetLibrary) |
![]() |
CurrentDocumentSelection | (Ereditato da CommandSetLibrary) |
![]() |
CurrentDocView | Ottiene la visualizzazione per la finestra di documento attiva. |
![]() |
CurrentModelingDocView | (Ereditato da CommandSetLibrary) |
![]() |
CurrentSelection | (Ereditato da CommandSetLibrary) |
![]() |
MenuService | (Ereditato da CommandSetLibrary) |
![]() |
MonitorSelection | (Ereditato da CommandSetLibrary) |
![]() |
ServiceProvider | (Ereditato da CommandSetLibrary) |
![]() |
SingleDocumentSelection | (Ereditato da CommandSetLibrary) |
![]() |
SingleSelection | (Ereditato da CommandSetLibrary) |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
![]() |
CanDeleteSelectedItems | Restituisce true se gli elementi selezionati possono essere eliminati. (Ereditato da CommandSetLibrary) |
![]() |
CreateObjRef | Critico per la sicurezza. Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto. (Ereditato da MarshalByRefObject) |
![]() |
DeleteSelectedItems | Elimina elementi selezionati (Ereditato da CommandSetLibrary) |
![]() |
Equals | Determina se l'oggetto specificato equivale all'oggetto corrente. (Ereditato da Object) |
![]() |
Finalize | Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulitura prima che l'oggetto stesso venga recuperato dalla procedura di Garbage Collection. (Ereditato da Object) |
![]() |
GetHashCode | Funge da funzione hash predefinita. (Ereditato da Object) |
![]() |
GetLifetimeService | Critico per la sicurezza. Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza. (Ereditato da MarshalByRefObject) |
![]() |
GetMenuCommands | Visualizza i comandi sul menu di scelta rapida. (Esegue l'override di CommandSetLibrary.GetMenuCommands()). |
![]() |
GetType | Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
![]() |
Initialize | Inizializzare il set di comandi.Chiama GetMenuCommands e memorizza il risultato nella cache. (Ereditato da CommandSetLibrary) |
![]() |
InitializeLifetimeService | Critico per la sicurezza. Consente di ottenere un oggetto servizio di durata per il controllo dei criteri di durata per l'istanza. (Ereditato da MarshalByRefObject) |
![]() |
IsAnyDocumentSelectionCompartment | True se uno degli elementi nell'elenco di selezione è un raggruppamento. (Ereditato da CommandSetLibrary) |
![]() |
IsAnyDocumentSelectionMoveableHostShape | True se uno degli elementi nell'elenco di selezione è una forma host spostabile, che non può essere eliminata. (Ereditato da CommandSetLibrary) |
![]() |
IsAnyDocumentSelectionUndeletable | True se uno degli elementi forma nell'elenco di selezione non può essere eliminato. (Ereditato da CommandSetLibrary) |
![]() |
IsCurrentDiagramEmpty | True se il diagramma non dispone di figli. (Ereditato da CommandSetLibrary) |
![]() |
IsDiagramSelected | True se il diagramma è selezionato. (Ereditato da CommandSetLibrary) |
![]() |
IsExpandableShape | Verifica se un utente può espandere la forma per visualizzare le proprietà del dominio. |
![]() |
IsSingleDocumentSelection | True se è presente un solo elemento selezionato nel documento attivo. (Ereditato da CommandSetLibrary) |
![]() |
IsSingleSelection | True se è presente un solo elemento selezionato nella finestra del documento attivo o nella finestra degli strumenti. (Ereditato da CommandSetLibrary) |
![]() |
MemberwiseClone() | Consente di creare una copia dei riferimenti dell'oggetto Object corrente. (Ereditato da Object) |
![]() |
MemberwiseClone(Boolean) | Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente. (Ereditato da MarshalByRefObject) |
![]() |
ProcessOnMenuDeleteCommand | Chiamato quando l'utente fa clic sul comando Elimina o preme il tasto CANC.Elimina un elemento.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuEditCompartmentItemCommand | Chiamato quando l'utente fa clic sul comando del menu Modifica su un elemento in una forma di raggruppamento.Imposta lo stato di modifica del testo.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuExpandCollapseCommand | Chiamato quando l'utente espande o comprime un elenco di proprietà assegnato a una forma. |
![]() |
ProcessOnMenuPageSetupCommand | Apre la finestra di dialogo Imposta pagina.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuPrintCommand | Apre la finestra di dialogo Stampa.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuPrintPreviewCommand | Apre la finestra di anteprima di stampa.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuRerouteLineCommand | Ripristina il percorso predefinito di un connettore tra due forme.Eseguire l'override di questo metodo per modificare il comportamento. |
![]() |
ProcessOnMenuResetDecoratorLocationCommand | Eseguire l'override di questo metodo per elaborare il comando di menu di reimpostazione della posizione dell'elemento Decorator. |
![]() |
ProcessOnMenuResetDecoratorSizeCommand | Eseguire l'override di questo metodo per elaborare il comando di menu di reimpostazione della dimensione dell'elemento Decorator. |
![]() |
ProcessOnMenuSelectAllCommand | Chiamato quando l'utente fa clic sul comando Seleziona tutto del menu Modifica o preme Ctrl-A.Seleziona tutte le forme in un diagramma.Eseguire l'override del metodo per modificare il comportamento. |
![]() |
ProcessOnStatusDeleteCommand | Determina se il comando di eliminazione compare nel menu di scelta rapida.Chiamato quando l'utente fa clic con il pulsante destro del mouse nel diagramma. |
![]() |
ProcessOnStatusEditCompartmentItemCommand | Determina se il comando di modifica compare nel menu di scelta rapida. |
![]() |
ProcessOnStatusExpandCollapseCommand | Determina se il comando di espansione o compressione compare nel menu di scelta rapida.Chiamato quando l'utente fa clic con il pulsante destro del mouse nel diagramma. |
![]() |
ProcessOnStatusPageSetupCommand | Determina se il comando Imposta pagina compare nel menu File.Chiamato quando l'utente fa clic sul menu File mentre il diagramma è attivo. |
![]() |
ProcessOnStatusPrintCommand | Determina se il comando Stampa compare nel menu File.Chiamato quando l'utente fa clic sul menu File mentre il diagramma è attivo. |
![]() |
ProcessOnStatusPrintPreviewCommand | Determina se il comando Anteprima di stampa compare nel menu File.Chiamato quando l'utente fa clic sul menu File mentre il diagramma è attivo. |
![]() |
ProcessOnStatusRerouteLineCommand | Determina se il comando di reindirizzamento compare nel menu di scelta rapida.Chiamato quando l'utente fa clic con il pulsante destro del mouse nel diagramma. |
![]() |
ProcessOnStatusResetDecoratorLocationCommand | Determina se il comando di reimpostazione della posizione dell'elemento Decorator compare nel menu di scelta rapida.Chiamato quando l'utente fa clic con il pulsante destro del mouse nel diagramma. |
![]() |
ProcessOnStatusResetDecoratorSizeCommand | Determina se il comando di reimpostazione della dimensione dell'elemento Decorator compare nel menu di scelta rapida.Chiamato quando l'utente fa clic con il pulsante destro del mouse nel diagramma. |
![]() |
ProcessOnStatusSelectAllCommand | Determina se il comando Seleziona tutto compare nel menu.Chiamato quando l'utente fa clic sul menu Modifica mentre il diagramma è attivo. |
![]() |
ToString | Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
In alto
Note
È possibile modificare la modalità del modello DSL risponda ad alcuni comandi di menu. I controlli che è possibile modificare includono i comandi del menu di scelta rapida e alcuni controlli sul file e nei menu Modifica.
Nel progetto DslPackage, presente un file denominato generato CommandSet.cs, che contiene una dichiarazione parziale di classe denominata <YourLanguageName>CommandSet. Per modificare il comportamento dei comandi di menu standard, aggiungere un altro file con una definizione parziale della stessa classe.
In questa classe, è possibile eseguire l'override dei metodi definiti nella classe base.
Nota
Verificare che lo spazio dei nomi nel nuovo file sia lo stesso spazio dei nomi in CommandSet.cs generato.Nel nuovo file, quando si digita "override" all'interno della dichiarazione di classe, verrà visualizzato un elenco di metodi che è possibile eseguire l'override.
Ciascun comando è disponibile un metodo di ProcessOnStatus... e un metodo di ProcessOnMenu.... Il metodo di ProcessOnStatus... determina se il comando viene visualizzato nel menu di scelta rapida. Impostare la proprietà visible del parametro di comando per determinare se il comando è visibile e impostare la proprietà enabled per determinare se la voce di menu è abilitata o inattiva off.
Il metodo di ProcessOnMenu... esegue il comando quando l'utente fa clic sulla voce di menu.
Nota
È possibile definire i comandi aggiuntivi nel file di Commands.vsct.
Per ulteriori informazioni, vedere Procedura: aggiungere un comando al menu di scelta rapida.
Esempi
Questo file viene aggiunto al progetto DslPackage. Impedisce agli utenti di DSL di eliminare più di un elemento per volta.
// 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();
}
}
}
}
Codice thread safe
Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.
Vedere anche
Riferimenti
Spazio dei nomi Microsoft.VisualStudio.Modeling.Shell