Freigeben über


Auswahl-Kontext-Objekte

Die Visual Studio integrierte Entwicklungsumgebung (IDE) verwendet ein globales Auswahlkontext, um zu bestimmen, was in der IDE angezeigt werden soll. Jedes Fenster in der IDE kann ihr eigenes Auswahlkontext Objekt verfügen, das auf den globalen Auswahlkontext gedrückt wird. Die IDE aktualisiert den globalen Auswahlkontext mit Werten aus einem Fenster, wenn dieses Fenster den Fokus besitzt. Weitere Informationen finden Sie unter um dem Benutzer Feed-back.

Jeder Fensterrahmen oder Website in der IDE hat einen Dienst, der STrackSelectionaufgerufen wird. Das Objekt, das von einem VSPackage erstellt wird, das im Fensterrahmen positioniert ist, muss die QueryService-Methode aufrufen, um einen Zeiger auf die ITrackSelection-Schnittstelle abzurufen.

Rahmenfenster können Teile ihrer Auswahl von Kontextinformationen zur Auswahlkontext auf den globalen weitergegeben werden, wenn sie gestartet werden. Diese Fähigkeit ist nützlich für Toolfenster, die mit einer leeren Auswahl beginnen müssen.

Das Ändern des globalen Auswahl kontexts löst Ereignisse, die VSPackages überwachen kann. VSPackages kann die folgenden Aufgaben ausführen, indem IVsTrackSelectionEx und IVsMonitorSelection-Schnittstellen implementiert:

  • Aktualisieren Sie die aktuell aktive Datei in einer Hierarchie.

  • Überwachen von Änderungen an bestimmten Elementtypen. Wenn beispielsweise ein VSPackage ein spezielles Eigenschaften Fenster verwendet, können Sie Änderungen im aktiven Eigenschaften Fenster Überwachen und thes nach Bedarf neu starten.

Die folgende Sequenz wird die typische Kurs der Auswahl nachverfolgung an.

  1. Die IDE ruft den Auswahlkontext aus dem neu geöffneten Fenster ab und setzt sie in den globalen Auswahlkontext ein. Wenn der Auswahlkontext HIERARCHY_DONTPROPAGATE oder SELCONTAINER_DONTPROPAGATE verwendet, werden diese Informationen nicht in den globalen Kontext weitergegeben. Weitere Informationen finden Sie unter um dem Benutzer Feed-back.

  2. Benachrichtigungsereignisse sind für jeden VSPackage übertragen, das sie angefordert hat.

  3. VSPackage wird Ereignissen, die diese empfängt, indem Aktivitäten wie die Aktualisierung einer Hierarchie oder einem Tool erneut ausführen und andere ähnliche Aufgaben.

Siehe auch

Referenz

IVsTrackSelectionEx

IVsMonitorSelection

Konzepte

Hierarchien in Visual Studio

Auswahl und Währungen in der IDE

Weitere Ressourcen

Projekttypen