IVsToolboxItemProvider Schnittstelle

Definition

Wird von Paketen implementiert, die statisch registrierte Toolboxelemente bereitstellen möchten (auf demselben Objekt wie IVsPackage).

public interface class IVsToolboxItemProvider
public interface class IVsToolboxItemProvider
__interface IVsToolboxItemProvider
public interface IVsToolboxItemProvider
type IVsToolboxItemProvider = interface
Public Interface IVsToolboxItemProvider
Abgeleitet

Hinweise

Wenn der Toolbox Inhalt in der Registrierung deklariert ist, wird diese Schnittstelle von der Toolbox aufgerufen, um den Element Inhalt Bedarfs gesteuert abzurufen (anstatt ihn mit einem einzigen Aufruf von zu erstellen ResetDefaults ). Wenn Inhalt in der Registrierung deklariert ist, diese Schnittstelle jedoch nicht implementiert ist, ResetDefaults wird dennoch aufgerufen, aber der Aufruf wird verzögert, bis der Inhalt eines Toolbox Elements benötigt wird (z. b. wenn der Benutzer ein Element auf einen Designer zieht).

Erstellen Sie den Registrierungsschlüssel unter, um den Toolbox Inhalt in der Registrierung zu deklarieren Toolbox\DefaultContent HKLM\Software\Microsoft\<appid>\<version>\Packages\<package GUID> .

Erstellen Sie unter dem Schlüssel defaultcontent einen Schlüssel für jede Toolbox Gruppe, in der Elemente erstellt oder platziert werden sollen. Der Name des Schlüssels ist die "eindeutige ID" (z. b. ein nicht lokalisierter Name). der Standardwert des Schlüssels ist der Name. Wenn der Name lokalisierbar ist, sollten Sie den Standardwert auf "#123" festlegen, wobei 123 die ID einer Ressource in der Satelliten-dll ist. Erstellen Sie unter jedem Gruppenschlüssel einen Schlüssel für jedes Toolbox Element, das Sie der Gruppe hinzufügen möchten.

Der Schlüssel Name und der Standardwert entsprechen der eindeutigen ID und dem Namen (identisch mit den Gruppen Schlüsseln). Außerdem sind die folgenden Werte erforderlich:

  • HelpKeyword: Zeichenfolge

  • Formate: eine durch Semikolons getrennte Liste von Datenformat Namen.

  • Beide Bitmap: binäre Daten, die die Pixel eines Bilds darstellen, wobei vier Bytes pro Pixel ( <unused> , rot, grün, blau) von links nach rechts und von oben nach unten angeordnet werden (wie von der GetDIBits-Funktion mit DIB_RGB_COLORS, 1 Ebene, BI_RGB Komprimierung, and32 Bits pro Pixel) abgerufen werden. Die Bitmap muss 16x16 Pixel betragen, es sei denn, es handelt sich um einen Bildstreifen (siehe Bitmapindex weiter unten). in diesem Fall muss Sie 16 Pixel hoch und eine multipled von 16 Pixel breit sein. oder... Bitmapresourceid: eine Zeichenfolge, die eine Bitmap-Ressource in der satellitedll des Pakets identifiziert. Die Größenbeschränkungen, die für "Bitmap" beschrieben werden, gelten auch hier.

  • TransparentColor: ein DWORD (mit Bytes <unused> , rot, grün, blau), das die Farbe angibt, die transparent in der Bitmap des Elements gerendert werden soll.

  • Die folgenden optionalen Werte können ebenfalls angegeben werden:

    1. Zeichen folgen Werte tiptitle, tipversion, tippublisher, tiptype und tipdescription (Weitere Informationen finden Sie in den Kommentaren zu IVsToolboxDataProvider2:: getitemtipinfo.

    2. Zeichen folgen Werte "Assemblyname", "TypeName", "tfms" und "targeteditemprovider".

    3. Der Zeichen folgen Wert minimumframeworkversion wird ebenfalls unterstützt, aus Kompatibilitätsgründen mit VS 2008.

    4. DWORD-Wert Bitmapindex, der angibt, dass es sich bei der Bitmap tatsächlich um einen Bildstreifen handelt, und identifiziert das abzurufende Bild.

Jeder Element Schlüssel kann optional über einen Unterschlüssel namens "itemcontent" mit Datenformaten verfügen, deren Inhalt zur Installationszeit bekannt ist. Für jeden dieser Schlüssel wird ein Wert unter diesem Schlüssel erstellt, dessen Name dem Namen des Datenformats entspricht und dessen Wert ein binäres Blob ist, das die Bytes des Formats enthält.

Der Inhalt der Datenformate wird nach Bedarf mithilfe von oder geladen IVsToolboxItemProvider , ResetDefaults wie oben beschrieben.

Methoden

GetItemContent(String, UInt16, IntPtr)

Gibt ein globales Handle für den Inhalt eines Benutzeroberflächenelements zurück.

Gilt für