Klasa CommandSet
Reprezentuje podzbiór poleceń, które są dostępne w menu Język specyficzne dla domeny.Zastąpić metody w YourLanguageCommandSet do modyfikacji, jak te polecenia są przetwarzane.
Ten interfejs API nie jest zgodny ze specyfikacją CLS.
Hierarchia dziedziczenia
System.Object
System.MarshalByRefObject
Microsoft.VisualStudio.Modeling.Shell.CommandSetLibrary
Microsoft.VisualStudio.Modeling.Shell.CommandSet
Przestrzeń nazw: Microsoft.VisualStudio.Modeling.Shell
Zestaw: Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0 (w Microsoft.VisualStudio.Modeling.Sdk.Shell.11.0.dll)
Składnia
'Deklaracja
<CLSCompliantAttribute(False)> _
Public MustInherit Class CommandSet _
Inherits CommandSetLibrary
[CLSCompliantAttribute(false)]
public abstract class CommandSet : CommandSetLibrary
Typ CommandSet uwidacznia następujące elementy członkowskie.
Konstruktorzy
Nazwa | Opis | |
---|---|---|
CommandSet | Inicjuje nowe wystąpienie CommandSet klasy. |
Początek
Właściwości
Nazwa | Opis | |
---|---|---|
CurrentDocData | (Odziedziczone z CommandSetLibrary). | |
CurrentDocumentSelection | (Odziedziczone z CommandSetLibrary). | |
CurrentDocView | Pobiera widoku dla aktywnego okna dokumentu. | |
CurrentModelingDocView | (Odziedziczone z CommandSetLibrary). | |
CurrentSelection | (Odziedziczone z CommandSetLibrary). | |
MenuService | (Odziedziczone z CommandSetLibrary). | |
MonitorSelection | (Odziedziczone z CommandSetLibrary). | |
ServiceProvider | (Odziedziczone z CommandSetLibrary). | |
SingleDocumentSelection | (Odziedziczone z CommandSetLibrary). | |
SingleSelection | (Odziedziczone z CommandSetLibrary). |
Początek
Metody
Nazwa | Opis | |
---|---|---|
CanDeleteSelectedItems | Zwraca wartość true, usunięcie zaznaczonych elementów. (Odziedziczone z CommandSetLibrary). | |
CreateObjRef | Krytyczny pod względem zabezpieczeń Tworzy obiekt, który zawiera wszystkie istotne informacje wymagane do wygenerowania serwera proxy, używany do komunikowania się z obiektem zdalnym. (Odziedziczone z MarshalByRefObject). | |
DeleteSelectedItems | Usuń wybrane elementy. (Odziedziczone z CommandSetLibrary). | |
Equals | Określa, czy określony obiekt jest równa bieżącego obiektu. (Odziedziczone z Object). | |
Finalize | Umożliwia obiekt spróbuj zwolnić zasoby i wykonywania innych operacji oczyszczania, zanim jest odzyskane w procesie wyrzucania elementów bezużytecznych. (Odziedziczone z Object). | |
GetHashCode | Służy jako funkcja mieszania dla określonego typu. (Odziedziczone z Object). | |
GetLifetimeService | Krytyczny pod względem zabezpieczeń Pobiera obiekt usługi bieżącego okresu istnienia, który kontroluje politykę okres istnienia dla tego wystąpienia. (Odziedziczone z MarshalByRefObject). | |
GetMenuCommands | Wyświetla polecenia w menu skrótów. (Zastępuje CommandSetLibrary.GetMenuCommands()). | |
GetType | Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object). | |
Initialize | Zainicjuj zestaw poleceń.Wywołuje GetMenuCommands i buforuje wynik. (Odziedziczone z CommandSetLibrary). | |
InitializeLifetimeService | Krytyczny pod względem zabezpieczeń Uzyskuje obiekt usługi istnienia kontroli zasad okres istnienia dla tego wystąpienia. (Odziedziczone z MarshalByRefObject). | |
IsAnyDocumentSelectionCompartment | Wartość true, jeśli wszystkie elementy w zaznaczonym obszarze listy jest przedziału. (Odziedziczone z CommandSetLibrary). | |
IsAnyDocumentSelectionMoveableHostShape | Wartość true, jeśli któryś z elementów na liście wyboru jest kształt ruchome hosta nie może zostać usunięty. (Odziedziczone z CommandSetLibrary). | |
IsAnyDocumentSelectionUndeletable | Wartość true, jeśli dowolnego kształtu elementów na liście wyboru nie można usunąć. (Odziedziczone z CommandSetLibrary). | |
IsCurrentDiagramEmpty | Ma wartość true, jeśli wykres nie ma elementów podrzędnych. (Odziedziczone z CommandSetLibrary). | |
IsDiagramSelected | Ma wartość true, jeśli wykres jest zaznaczona. (Odziedziczone z CommandSetLibrary). | |
IsExpandableShape | Sprawdza, czy użytkownik może rozwinąć kształt, aby wyświetlić właściwości domeny. | |
IsSingleDocumentSelection | Ma wartość true, jeśli istnieje tylko jeden zaznaczony element w aktywnym dokumencie. (Odziedziczone z CommandSetLibrary). | |
IsSingleSelection | Ma wartość true, jeśli istnieje tylko jeden element wybranego okna aktywnego dokumentu lub okna narzędzia. (Odziedziczone z CommandSetLibrary). | |
MemberwiseClone() | Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object). | |
MemberwiseClone(Boolean) | Powoduje utworzenie kopii shallow bieżącego MarshalByRefObject obiektu. (Odziedziczone z MarshalByRefObject). | |
ProcessOnMenuDeleteCommand | Wywoływane, gdy użytkownik kliknie polecenie Delete lub naciśnie klawisz Delete.Usuwa element.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuEditCompartmentItemCommand | Wywoływane, gdy użytkownik kliknie polecenie menu edycji elementu w kształcie Przedział.Przechodzi do stanu edycji tekstu.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuExpandCollapseCommand | Wywoływane, gdy użytkownik rozwija lub zwija listę właściwości, która jest przypisana do kształtu. | |
ProcessOnMenuPageSetupCommand | Otwiera okno dialogowe Ustawienia strony.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuPrintCommand | Otwiera okno dialogowe Drukuj.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuPrintPreviewCommand | Otwiera okno podglądu wydruku.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuRerouteLineCommand | Przywraca domyślne położenie łącznika między dwoma kształtami.Zastąpić tę metodę, aby zmienić to zachowanie. | |
ProcessOnMenuResetDecoratorLocationCommand | Zastąpić tę metodę, aby przetwarzać polecenie Resetuj lokalizacji Dekorator. | |
ProcessOnMenuResetDecoratorSizeCommand | Zastąpić tę metodę, aby przetwarzać polecenie Resetuj rozmiar Dekorator. | |
ProcessOnMenuSelectAllCommand | Wywoływane, gdy użytkownik kliknie polecenie Zaznacz wszystko w menu Edycja lub naciśnie klawisze ctrl-A.Zaznacza wszystkie kształty na diagramie.Należy zastąpić metodę, aby zmienić to zachowanie. | |
ProcessOnStatusDeleteCommand | Określa, czy polecenie Delete pojawia się w menu kontekstowym.Wywoływane, gdy użytkownik kliknie na diagram prawym przyciskiem myszy. | |
ProcessOnStatusEditCompartmentItemCommand | Określa, czy polecenie Edytuj pojawia się w menu kontekstowym. | |
ProcessOnStatusExpandCollapseCommand | Określa, czy w menu kontekstowym zostanie wyświetlone polecenie Rozwiń lub Zwiń.Wywoływane, gdy użytkownik kliknie na diagram prawym przyciskiem myszy. | |
ProcessOnStatusPageSetupCommand | Określa, czy polecenie Ustawienia strony pojawia się w menu Plik.Wywoływane, gdy użytkownik kliknie menu Plik, gdy wykres jest aktywny. | |
ProcessOnStatusPrintCommand | Określa, czy polecenie Drukuj pojawi się w menu Plik.Wywoływane, gdy użytkownik kliknie menu Plik, gdy wykres jest aktywny. | |
ProcessOnStatusPrintPreviewCommand | Określa, czy menu pojawi się polecenie Podgląd wydruku.Wywoływane, gdy użytkownik kliknie menu Plik, gdy wykres jest aktywny. | |
ProcessOnStatusRerouteLineCommand | Określa, czy w menu kontekstowym zostanie wyświetlone polecenie zmieniać trasę.Wywoływane, gdy użytkownik kliknie na diagram prawym przyciskiem myszy. | |
ProcessOnStatusResetDecoratorLocationCommand | Określa, czy w menu kontekstowym zostanie wyświetlone polecenie odpoczynku Dekorator lokalizacji.Wywoływane, gdy użytkownik kliknie na diagram prawym przyciskiem myszy. | |
ProcessOnStatusResetDecoratorSizeCommand | Określa, czy polecenie Resetuj rozmiar Dekorator pojawia się w menu.Wywoływane, gdy użytkownik kliknie na diagram prawym przyciskiem myszy. | |
ProcessOnStatusSelectAllCommand | Określa, czy menu pojawi się polecenie Zaznacz wszystko.Wywoływane, gdy użytkownik kliknie menu Edycja, gdy wykres jest aktywny. | |
ToString | Zwraca wartość typu ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object). |
Początek
Uwagi
Można modyfikować, jak modem DSL reaguje na niektórych poleceń menu.Polecenia, które można modyfikować obejmować polecenia menu skrótów i niektóre polecenia w menu Plik i Edycja.
W projekcie DslPackage znajdziesz wygenerowany plik o nazwie CommandSet.cs, zawierające częściowa deklaracja klasy o nazwie <YourLanguageName> CommandSet.Aby zmodyfikować zachowanie poleceń menu standardowe, należy dodać inny plik z definicji częściowej tej samej klasy.
W tej klasie można zastąpić metody zdefiniowane w klasie podstawowej.
[!UWAGA]
Sprawdź, czy obszar nazw w nowym pliku jest taka sama, jak obszar nazw w wygenerowanym CommandSet.cs.W nowym pliku po wpisaniu "override" w deklaracji klasy należy Zobacz listy metod, które można zastąpić.
Każde polecenie ma ProcessOnStatus...Metoda a ProcessOnMenu...Metoda.ProcessOnStatus...Metoda określa, czy polecenie pojawi się w menu kliknij prawym przyciskiem myszy.Ustaw właściwość Visible parametr polecenia, aby ustalić, czy polecenie jest widoczny i ustawić właściwość Enabled, czy element menu jest włączone, czy na szaro.
ProcessOnMenu...Metoda wykonuje polecenie, gdy użytkownik kliknie element menu.
[!UWAGA]
Można zdefiniować dodatkowe polecenia w pliku Commands.vsct.
Aby uzyskać więcej informacji, zobacz Jak: Dodawanie polecenia do Menu skrótów.
Przykłady
Ten plik jest dodawany do projektu DslPackage.Użytkownicy linii DSL zapobiega usuwaniu więcej niż jeden element naraz.
// 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();
}
}
}
}
Bezpieczeństwo wątku
Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.
Zobacz też
Informacje
Przestrzeń nazw Microsoft.VisualStudio.Modeling.Shell