CommandSet-Klasse
Stellt eine Teilmenge der Befehle dar, die in den Menüs einer domänenspezifischen Sprache verfügbar sind.Überschreiben Sie die Methoden in TheLanguageCommandSet, um zu ändern, wie diese Befehle verarbeitet werden.
Diese API ist nicht CLS-kompatibel.
Vererbungshierarchie
System.Object
System.MarshalByRefObject
Microsoft.VisualStudio.Modeling.Shell.CommandSetLibrary
Microsoft.VisualStudio.Modeling.Shell.CommandSet
Namespace: Microsoft.VisualStudio.Modeling.Shell
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (in Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)
Syntax
'Declaration
<CLSCompliantAttribute(False)> _
Public MustInherit Class CommandSet _
Inherits CommandSetLibrary
[CLSCompliantAttribute(false)]
public abstract class CommandSet : CommandSetLibrary
Der CommandSet-Typ macht die folgenden Member verfügbar.
Konstruktoren
Name | Beschreibung | |
---|---|---|
CommandSet | Initialisiert eine neue Instanz der CommandSet-Klasse. |
Zum Seitenanfang
Eigenschaften
Name | Beschreibung | |
---|---|---|
CurrentDocData | (Von CommandSetLibrary geerbt.) | |
CurrentDocumentSelection | (Von CommandSetLibrary geerbt.) | |
CurrentDocView | Ruft die Ansicht für das aktive Dokumentfenster ab. | |
CurrentModelingDocView | (Von CommandSetLibrary geerbt.) | |
CurrentSelection | (Von CommandSetLibrary geerbt.) | |
MenuService | (Von CommandSetLibrary geerbt.) | |
MonitorSelection | (Von CommandSetLibrary geerbt.) | |
ServiceProvider | (Von CommandSetLibrary geerbt.) | |
SingleDocumentSelection | (Von CommandSetLibrary geerbt.) | |
SingleSelection | (Von CommandSetLibrary geerbt.) |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
CanDeleteSelectedItems | Gibt true zurück, wenn die ausgewählten Elemente gelöscht werden können. (Von CommandSetLibrary geerbt.) | |
CreateObjRef | Sicherheitsrelevant. Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Von MarshalByRefObject geerbt.) | |
DeleteSelectedItems | Löschen Sie die ausgewählten Elemente. (Von CommandSetLibrary geerbt.) | |
Equals | Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.) | |
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.) | |
GetHashCode | Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.) | |
GetLifetimeService | Sicherheitsrelevant. Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Von MarshalByRefObject geerbt.) | |
GetMenuCommands | Zeigt die Befehle im Kontextmenü an. (Überschreibt CommandSetLibrary.GetMenuCommands().) | |
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) | |
Initialize | Initialisieren Sie den Befehl festgelegt.Aufrufe GetMenuCommands und Cache das Ergebnis. (Von CommandSetLibrary geerbt.) | |
InitializeLifetimeService | Sicherheitsrelevant. Ruft ein Lebensdauerdienstobjekt ab, mit dem die Lebensdauerrichtlinien für diese Instanz gesteuert werden können. (Von MarshalByRefObject geerbt.) | |
IsAnyDocumentSelectionCompartment | True, wenn der Elemente in der Auswahlliste besteht aus einem Depot. (Von CommandSetLibrary geerbt.) | |
IsAnyDocumentSelectionMoveableHostShape | True, wenn der Elemente in der Auswahlliste ist eine verschiebbare Host Form, die nicht gelöscht werden kann. (Von CommandSetLibrary geerbt.) | |
IsAnyDocumentSelectionUndeletable | True, wenn der Formelemente in der Auswahlliste kann nicht gelöscht werden. (Von CommandSetLibrary geerbt.) | |
IsCurrentDiagramEmpty | True, wenn das Diagramm keine untergeordneten Elemente verfügt. (Von CommandSetLibrary geerbt.) | |
IsDiagramSelected | True, wenn das Diagramm ausgewählt ist. (Von CommandSetLibrary geerbt.) | |
IsExpandableShape | Überprüft, ob ein Benutzer die Form erweitern kann, um Domäneneigenschaften anzuzeigen. | |
IsSingleDocumentSelection | True, wenn nur ein ausgewähltes Element im aktiven Dokument vorhanden ist. (Von CommandSetLibrary geerbt.) | |
IsSingleSelection | True, wenn nur ein ausgewähltes Element im aktiven Fenster des Dokumentfensters oder des Tools vorhanden ist. (Von CommandSetLibrary geerbt.) | |
MemberwiseClone() | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) | |
MemberwiseClone(Boolean) | Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Von MarshalByRefObject geerbt.) | |
ProcessOnMenuDeleteCommand | Wird aufgerufen, wenn der Benutzer auf den Befehl Löschen geklickt oder die ENTF-TASTE drückt.Löscht ein Element.Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuEditCompartmentItemCommand | Wird aufgerufen, wenn der Benutzer auf das Menü Bearbeiten auf ein Element in einem Depot Form klickt.Gibt den Zustand Textbearbeitungs ein.Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuExpandCollapseCommand | Wird aufgerufen, wenn der Benutzer eine Liste mit Eigenschaften erweitert oder reduziert, die auf einem Formular zugewiesen wird. | |
ProcessOnMenuPageSetupCommand | Öffnet das Dialogfeld Seiteneinrichtungs.Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuPrintCommand | Öffnet das Dialogfeld Drucken.Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuPrintPreviewCommand | Öffnet das Fenster " Seitenansicht ".Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuRerouteLineCommand | Stellt die Standardposition eines Konnektors zwischen zwei Formen wieder her.Überschreiben Sie diese Methode, um dieses Verhalten zu ändern. | |
ProcessOnMenuResetDecoratorLocationCommand | Überschreiben Sie diese Methode, um den Rücksetzungs-Decorator-Element-Speicherort Menü zu verarbeiten. | |
ProcessOnMenuResetDecoratorSizeCommand | Überschreiben Sie diese Methode, um den Rücksetzungs-Decorator-Element-Größen Menü zu verarbeiten. | |
ProcessOnMenuSelectAllCommand | Wird aufgerufen, wenn der Benutzer auf das ausgewählte aller Befehl im Menü Bearbeiten klickt oder legt Strg+A.Wählt alle Formen in einem Diagramm aus.Überschreiben Sie die Möglichkeit, dieses Verhalten zu ändern. | |
ProcessOnStatusDeleteCommand | Bestimmt, ob der Befehl Löschen im Kontextmenü wird angezeigt.Wird aufgerufen, wenn der Benutzer über dem Diagramm mit der rechten Maustaste klickt. | |
ProcessOnStatusEditCompartmentItemCommand | Bestimmt, ob der Befehl Bearbeiten im Kontextmenü wird angezeigt. | |
ProcessOnStatusExpandCollapseCommand | Bestimmt, ob der erweiterns- oder Reduzieren Sie im Kontextmenü den Befehl angezeigt wird.Wird aufgerufen, wenn der Benutzer über dem Diagramm mit der rechten Maustaste klickt. | |
ProcessOnStatusPageSetupCommand | Bestimmt, ob der Befehl im Menü Datei Seiteneinrichtungs wird angezeigt.Wird aufgerufen, wenn der Benutzer auf das Menü Datei drückt, während das Diagramm aktiv ist. | |
ProcessOnStatusPrintCommand | Bestimmt, ob der Befehl Drucken im Menü Datei angezeigt.Wird aufgerufen, wenn der Benutzer auf das Menü Datei drückt, während das Diagramm aktiv ist. | |
ProcessOnStatusPrintPreviewCommand | Bestimmt, ob der Befehl die Seitenansicht im Menü dargestellt wird.Wird aufgerufen, wenn der Benutzer auf das Menü Datei drückt, während das Diagramm aktiv ist. | |
ProcessOnStatusRerouteLineCommand | Bestimmt, ob der Befehl Umlenkungs im Kontextmenü wird angezeigt.Wird aufgerufen, wenn der Benutzer über dem Diagramm mit der rechten Maustaste klickt. | |
ProcessOnStatusResetDecoratorLocationCommand | Bestimmt, ob der Befehl Rest-Decorator-Element-Speicherort im Kontextmenü wird angezeigt.Wird aufgerufen, wenn der Benutzer über dem Diagramm mit der rechten Maustaste klickt. | |
ProcessOnStatusResetDecoratorSizeCommand | Bestimmt, ob der Befehl Rücksetzungs-Decorator-Element-Größen im Menü dargestellt wird.Wird aufgerufen, wenn der Benutzer über dem Diagramm mit der rechten Maustaste klickt. | |
ProcessOnStatusSelectAllCommand | Bestimmt, ob das ausgewählte aller Befehl im Menü dargestellt wird.Wird aufgerufen, wenn der Benutzer auf das Menü Bearbeiten klicken, während das Diagramm aktiv ist. | |
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
Zum Seitenanfang
Hinweise
Sie können ändern, wie das DSL auf eine Menübefehle reagiert.Die Befehle können Sie im Kontextmenü die Befehle zählen auch einige Befehle in den Menüs Bearbeiten von Datei- und ändern.
Suchen Sie im DslPackage-Projekt enthält eine generierte Datei mit dem Namen CommandSet.cs und eine partielle Deklaration einer Klasse, die <TheLanguageName>CommandSet aufgerufen wird.Um das Verhalten der Standardwert des zu ändern, fügen Sie eine andere Datei mit einer partiellen Definition der gleichen Klasse hinzu.
In dieser Klasse können Sie die Methoden überschreiben, die in der Basisklasse definiert sind.
Hinweis |
---|
Stellen Sie sicher, dass der Namespace in der neuen Datei mit dem Namespace im generierten CommandSet.cs ist.In der neuen Datei „override“ innerhalb der Klassendeklaration eingegeben haben, sollten Sie eine Liste der Methoden finden, die Sie überschreiben können. |
Jeder Befehl verfügt über ein ProcessOnStatus…Methode und ein ProcessOnMenu…-Methode.Das ProcessOnStatus…Methode bestimmt, ob der Befehl für das Kontextmenü angezeigt wird.Legen Sie die sichtbare Eigenschaft des Befehls Parameters, um zu bestimmen, ob der Befehl, und die Enabled-Eigenschaft festzulegen, um zu bestimmen, ob das Menüelement sichtbar ist aktiviert und abgeblendet dargestellt wird.
Das ProcessOnMenu…Methode führt den Befehl aus, wenn der Benutzer auf das Menüelement klickt.
Hinweis |
---|
Sie können zusätzliche Befehle in der Commands.vsct-Datei definieren. |
Weitere Informationen finden Sie unter Gewusst wie: Hinzufügen eines Befehls zum Kontextmenü.
Beispiele
Diese Datei wird dem DslPackage-Projekt hinzugefügt.Sie wird verhindert, dass Benutzer des DSL an mehrere Elemente gleichzeitig löschen.
// 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();
}
}
}
}
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Siehe auch
Referenz
Microsoft.VisualStudio.Modeling.Shell-Namespace