Benutzerdefinierte Kategorien und Implementieren Anzeigen-Elemente
VSPackage kann Steuerelement die angegebene Schriftart und Farbe des Texts auf der Visual Studio integrierten Entwicklungsumgebung (IDE) von benutzerdefinierten Kategorien und Anzeigen von Elementen bereitstellen.
Benutzerdefinierte Elemente und zeigt Kategorien sind auf der Eigenschaftenseite Schriftarten und Farben . Um die Schriftarten und Farben-Eigenschaftenseite im Menü Extras öffnen, klicken Sie auf Optionen. Erweitern Sie Umgebung und klicken Sie dann auf Schriftarten und Farben.
Wenn er diesen Mechanismus verwendet, muss die VSPackages IVsFontAndColorDefaultsProvider-Schnittstelle und ihre zugeordneten Schnittstellen implementieren.
Prinzipiell dieser Mechanismus kann verwendet werden, um alle vorhandenen Elemente anzeigen und Kategorien zu ändern. Allerdings sollte nicht verwendet werden, um Text-EditorKategorieElemente anzeigensein oder zu ändern. Weitere Informationen finden Sie unter Schriftart-und Farben-Übersicht.
So erstellen Sie ein benutzerdefiniertes Kategorien oder ein VSPackage implementieren, muss Elemente anzeigen:
Erstellen oder Identifizieren von Kategorien in der Registrierung.
Die Implementierung der IDE Schriftarten und Farben der Eigenschaftenseite verwendet diese Informationen, um für den Dienst ordnungsgemäß abgefragt, der eine bestimmte Kategorie unterstützt.
Erstellen oder identifizieren Sie die Gruppen (optional) in der Registrierung.
Es ist möglicherweise sinnvoll, eine Gruppe definieren, die die Gesamtmenge zweier darstellt oder mehrere Kategorien. Wenn eine Gruppe definiert ist, führt die IDE automatisch Unterkategorien zusammen verteilt und zeigt Elemente in der Gruppe.
Unterstützung der IDE zu implementieren.
Schriftart- und Farbwechsel - Handle.
Weitere Informationen finden Sie unter Gespeicherte Schriftart-und zugreifen Farben-Einstellungen.
So identifizieren oder Kategorien erstellen
Erstellen Sie einen speziellen Typ Kategorienregistrierungseintrag unter [HKLM \ SOFTWARE \ Microsoft \ Visual Studio \ <Visual Studio version> \ FontAndColors \<Category>]
<Category> ist der nicht lokalisierte Name der Kategorie.
Füllen Sie die Registrierung mit zwei Werten auf:
Name
Typ
Daten
Beschreibung
Kategorie
REG_SZ
GUID
Ein GUID erstellt, um die Kategorie zu identifizieren.
Package
REG_SZ
GUID
Die GUID des VSPackage-Diensts, der die Kategorie unterstützt.
Der Dienst, der in der Registrierung angegeben wird, muss eine Implementierung von IVsFontAndColorDefaults für die entsprechende Kategorie bereitstellen.
So fügen Sie Gruppen erstellen oder ermitteln
Erstellen Sie einen speziellen Typ Kategorienregistrierungseintrag unter [HKLM \ SOFTWARE \ Microsoft \ Visual Studio \ <Visual Studio version> \ FontAndColors \ <group> ]
<group> ist der nicht lokalisierte Name der Gruppe.
Füllen Sie die Registrierung mit zwei Werten auf:
Name
Typ
Daten
Beschreibung
Kategorie
REG_SZ
GUID
Ein GUID erstellt, um die Gruppe zu identifizieren.
Package
REG_SZ
GUID
Die GUID des Diensts, der die Kategorie unterstützt.
Der Dienst, der in der Registrierung angegeben wird, muss eine Implementierung von T:Microsoft.VisualStudio.Shell.Interop.IVsFontAndColorGroup für die entsprechende Gruppe bereitstellen.
So implementieren Sie die IDE-Unterstützung
Implementieren GetObject, das entweder eine IVsFontAndColorDefaults-Schnittstelle oder eine Schnittstelle zum T:Microsoft.VisualStudio.Shell.Interop.IVsFontAndColorGroup IDE für jedes Kategorie oder die angegebene Gruppe GUID zurückgibt.
Für jedes Kategorie VSPackages, unterstützt sie implementiert eine separate Instanz der IVsFontAndColorDefaults-Schnittstelle.
Die Methoden, die von IVsFontAndColorDefaults implementiert werden, müssen mit der IDE bereitgestellt:
Auflisten von Elemente anzeigen in Kategorie.
Lokalisierbare Namen für Elemente anzeigen.
Anzeigeinformationen für jeden Member von Kategorie.
Hinweis
Jedes Kategorie muss mindestens ein Element anzeigenenthalten.
Die IDE verwendet die T:Microsoft.VisualStudio.Shell.Interop.IVsFontAndColorGroup-Schnittstelle, um eine Union von mehreren Kategorien zu definieren.
Seine Implementierung stellt die IDE durch:
Eine Liste Kategorien , das eine angegebene Gruppe enthalten.
Zugriff auf Instanzen von IVsFontAndColorDefaults jedes Kategorie innerhalb der Gruppe unterstützt.
Lokalisierbare Gruppennamen.
Die IDE aktualisieren:
Die IDE speichert Informationen zu Schriftart und Farben Einstellungen. Daher nach jeder Änderung der Konfiguration der IDE Schriftart und Farben , ist es empfehlenswert, um sicherzustellen, dass der Cache aktuell ist.
Aktualisieren des Caches wird von der IVsFontAndColorCacheManager-Schnittstelle erfolgen und kann oder nur für ausgewählte Elemente globalen ausgeführt werden.
So behandeln Farben-Änderungen Schriftart-und
Um den Farbauftrag von Text ordnungsgemäß zu unterstützen den VSPackage anzeigt, muss der Farbauftrag, der für ein VSPackage unterstützt benutzerinitiierte Änderungen reagieren, auf die von der Schriftarten und Farben-Eigenschaftenseite vorgenommen werden. VSPackage geschieht dies durch:
IDE-generierte Ereignisse über die Implementierung der Schnittstelle IVsFontAndColorEvents behandeln.
Die IDE ruft die entsprechende Methode nach einer Änderung der Benutzer Schriftarten und Farben Seite an. Beispielsweise ruft es die OnFontChanged-Methode auf, wenn eine neue Schriftart ausgewählt ist.
- oder -
Abstimmung der IDE für Änderungen.
Dies kann über die SYSTEM-implementierte IVsFontAndColorStorage-Schnittstelle erfolgen. Obwohl in erster Linie für die Unterstützung der Persistenz, die GetItem-Methode abgerufen werden können. Elemente anzeigenfür Schriftart und Farbinformationen Weitere Informationen finden Sie unter Gespeicherte Schriftart-und zugreifen Farben-Einstellungen.
Hinweis
Um sicherzustellen, dass die Ergebnisse zu optimieren, indem Sie abgerufene korrekt, es kann hilfreich sein IVsFontAndColorCacheManager die Schnittstelle für um zu bestimmen, ob ein Cache leeren und Update vor dem Aufrufen der Methoden zum Abrufen der IVsFontAndColorStorage-Schnittstelle benötigt werden.
Siehe auch
Aufgaben
Gewusst wie: Greifen Sie auf die integrierte Schriftarten und das Farbschema zu
Referenz
IVsFontAndColorDefaultsProvider
Konzepte
Schriftart und Farbinformationen für Text-Farbauftrag abrufen