Freigeben über


Befehls-Entwurf

Wenn Sie einen Befehl VSPackage hinzufügen, müssen Sie angeben, wo sie angezeigt werden soll, wenn es verfügbar ist, und wie er behandelt werden soll.

Befehle definieren

Um neue Befehle zu definieren, fügen Sie eine Visual Studio-Befehls-Tabelle .vsct () im VSPackage-Projekt ein. Wenn Sie ein VSPackage erstellen, indem Sie die Visual Studio-Paket-Vorlage verwendet haben, enthält das Projekt eine dieser Dateien. Weitere Informationen finden Sie unter (Visual Studio-Befehls-Tabelle. Dateien Vsct).

Visual Studio führt alle gefundenen zusammen .vsct-Dateien, dass die Befehle anzeigen kann. Da diese Dateien von der VSPackage-Binärdatei unterschiedlich sind, muss Visual Studio das Paket nicht laden, um die Befehle zu ermitteln. Weitere Informationen finden Sie unter Wie VSPackages Benutzeroberflächenelemente Hinzufügen der IDE.

Visual Studio verwendet das Attribut ProvideMenuResourceAttribute Registrierungsdaten, um Menüressourcen und Befehle zu definieren. Weitere Informationen finden Sie unter Befehls-Implementierung.

Befehle können auf mehrere verschiedene Möglichkeiten zur Laufzeit geändert werden. Sie können angezeigt oder ausgeblendet werden, aktiviert oder deaktiviert werden. Sie können verschiedene Text oder Symbolen angezeigt werden, oder andere Werte enthalten. Ein Großteil Anpassung ist ausgeführt werden, bevor Visual Studio VSPackages geladen werden. Weitere Informationen finden Sie unter Wie VSPackages Benutzeroberflächenelemente Hinzufügen der IDE.

Befehls-Handler

Wenn Sie einen Befehl erstellen, müssen Sie einen Ereignishandler bereitstellen, um den Befehl auszuführen. Wenn der Benutzer den Befehl auswählt, muss er entsprechend weitergeleitet werden. Weiterleiten eines Befehls für das Senden dieser in richtigen VSPackages ausblenden, um es zu aktivieren bzw. zu deaktivieren oder es anzuzeigen und führt sie aus, wenn der Benutzer beschließt. Weitere Informationen finden Sie unter Befehls-Routing-Algorithmus.

Die Visual Studio-Befehls-Umgebung

Visual Studio kann der Host eine beliebige Anzahl von VSPackages und jedes kann seinen eigenen Befehls Gruppe beitragen. Die Umgebung wird nur die Befehle an, die auf die aktuelle Aufgabe geeignet sind. Weitere Informationen finden Sie unter Befehls-Verfügbarkeit und Auswahl-Kontext-Objekte.

VSPackage, das die neue Befehle definiert, Menüs, Symbolleisten oder Kontextmenüs stellt die Befehlsinformationen für Visual Studio bei der Installation von Registrierungseinträgen dass Bezugshilfsmittel im systemeigenen oder verwalteten Assemblys bereit. Jede Ressource verweist auf eine Datei der Binärdaten Ressource (.cto), die angezeigt wird, wenn Sie eine Visual Studio-Befehls-Tabelle (.vsct) kompilieren. Dies kann Visual Studio, um zusammengeführte Befehls legt bereitzustellen, Menüs und Symbolleisten, ohne jedes installierte VSPackages geladen werden soll.

Befehls-Organisation

Die Befehle positions Umgebung von Gruppe, Priorität und Menüs.

  • Gruppen sind logische Auflistung verwandter Befehlen bereit, z. B. von Ausschneiden, Kopierenund Einfügen Befehlsgruppe. Gruppen sind die Befehle in Menüs angezeigt werden.

  • Priorität bestimmt die Reihenfolge, in der einzelne Befehle in einer Gruppe im Menü angezeigt werden.

  • Menüs fungieren als Container für Gruppen auf.

Die Umgebung definiert mehrere Befehle, Gruppen und Menüs vor. Weitere Informationen finden Sie unter Aufzeichnen von Befehl, Gruppe und Symbolleisten-Platzierung den Standardwert an.

Ein Befehl eine primäre Gruppe zugewiesen werden kann. Die wichtigsten Steuerelemente die Position des Befehls in der Struktur des Hauptmenüs und im Dialogfeld Anpassen . Ein Befehl kann in mehreren Gruppen werden. Beispielsweise kann ein Befehl für das Hauptmenü angezeigt, und in einem Kontextmenü auf einer Symbolleiste sein. Weitere Informationen finden Sie unter Wie VSPackages Benutzeroberflächenelemente Hinzufügen der IDE.

Befehls-Routing

Der Prozess des Aufrufs und des Weiterleitens von Befehlen für VSPackages unterscheidet sich vom Prozess des Aufrufs von Methoden für Objektinstanzen.

Die Umgebung führt Befehle sequenziell aus dem innersten (lokalen) - Befehls auf Grundlage der aktuellen Auswahl ist, zum äußersten (globale) Kontext wechselt. Im ersten Kontext, der den Befehl auszuführen, ist der, der diesen behandelt. Weitere Informationen finden Sie unter Befehls-Routing-Algorithmus.

In den meisten Instanzen behandelt die Umgebung Befehle, indem sie die IOleCommandTarget-Schnittstelle verwendet. Da das Befehlsobjekt routing Schema für viele verschiedene Objekte zum Behandeln von Befehlen ermöglicht, IOleCommandTarget kann eine beliebige Anzahl von Objekten implementiert werden. Im Folgenden werden einige dieser ActiveX-Steuerelemente Microsoft Windows Implementierungen, die Dokumentobjekte hierarchien Projekt, und VSPackage-Objekte selbst (für globale Befehle). In einigen speziellen Fällen, z. B. Befehle in einer Hierarchie weiterleitend, muss die IVsHierarchy-Schnittstelle implementiert werden.

Verwandte Themen

Titel

Beschreibung

Befehls-Implementierung

Beschreibt, wie Befehle in einem VSPackage implementieren.

Befehls-Verfügbarkeit

Beschreibt, wie Visual Studio-Kontext bestimmt, welche Befehle verfügbar sind.

Befehls-Routing-Algorithmus

Beschreibt, wie Visual Studio-Befehls-Routing können Befehle Architektur der durch ein anderes VSPackages behandelt werden sollen.

Befehls-Platzierungs-Richtlinien

Schlägt vor, wie Befehle in der Visual Studio-Umgebung positioniert.

Wie VSPackages Benutzeroberflächenelemente Hinzufügen der IDE

Beschreibt, wie gut die VSPackages Visual Architektur der Studio-Befehls verwenden kann.

Aufzeichnen von Befehl, Gruppe und Symbolleisten-Platzierung den Standardwert an

Beschreibt, wie VSPackages beste Verwendung der Befehle können, die in Visual Studio enthalten sind.

Laden von VSPackages

Beschreibt, wie Visual Studio VSPackages geladen werden.

(Visual Studio-Befehls-Tabelle. Dateien Vsct)

Stellt Informationen über XML-basierte .vsct-Dateien bereit, mit denen das Lay-out und die Darstellung von Befehlen in VSPackages zu beschreiben.