TypeDescriptor.AddProvider Methode

Definition

Fügt der Liste der Anbieter für diesen Typdeskriptor einen Typbeschreibungsanbieter hinzu.

Überlädt

AddProvider(TypeDescriptionProvider, Object)

Fügt einen Typbeschreibungsanbieter für eine einzelne Instanz einer Komponente hinzu.

AddProvider(TypeDescriptionProvider, Type)

Fügt einen Typbeschreibungsanbieter für eine Komponentenklasse hinzu.

AddProvider(TypeDescriptionProvider, Object)

Quelle:
TypeDescriptor.cs
Quelle:
TypeDescriptor.cs
Quelle:
TypeDescriptor.cs

Fügt einen Typbeschreibungsanbieter für eine einzelne Instanz einer Komponente hinzu.

public:
 static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, System::Object ^ instance);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, object instance);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * obj -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, instance As Object)

Parameter

provider
TypeDescriptionProvider

Das hinzuzufügende TypeDescriptionProvider.

instance
Object

Eine Instanz der Zielkomponente.

Ausnahmen

Ein oder beide Parameter sind null.

Hinweise

Die AddProvider(TypeDescriptionProvider, Object) -Methode fügt einen Typbeschreibungsanbieter hinzu, der Typinformationen für eine einzelne instance einer Komponente bereitstellt. Wenn von dieser Methode ein Anbieter hinzugefügt wird, wird die Methode des Anbieters CreateInstance nicht aufgerufen, da die instance bereits vorhanden ist.

Diese Methode behält keinen harten Verweis auf die Komponente bei, sodass sie nicht verhindert, dass die Komponente abgeschlossen wird.

Es ist möglich, mehrere Typbeschreibungsanbieter für denselben Typ oder dasselbe Objekt hinzuzufügen. In diesem Fall wird ausschließlich der erste Typbeschreibungsanbieter verwendet, der Typinformationen bereitstellt. Da Typinformationsanbieter in einem Stapel gespeichert werden, ist der letzte hinzugefügte Anbieter der erste abgefragte Anbieter. Dieses Verhalten ermöglicht es, die AddProvider(TypeDescriptionProvider, Object) Methoden und RemoveProvider zum Pushen und Pop-Typbeschreibungsanbieter zu verwenden, die für bestimmte Szenarien erforderlich sind.

Bei erfolgreicher Ausführung ruft diese Methode die Refresh(Object) -Methode für den instance -Parameter auf.

Hinweis

Die beiden Versionen dieser Methode führen zu Ergebnissen mit unterschiedlichen Bereichen. Die AddProvider Methode, die einen Object Parameter akzeptiert, wirkt sich nur auf den einzelnen instance der angegebenen Komponente aus. Im Gegensatz dazu wirkt sich die andere Überladung, die einen Type Parameter akzeptiert, auf alle Instanzen der Komponente aus, die durch diesen Typ beschrieben wird.

Verwenden Sie die AddProviderTransparent(TypeDescriptionProvider, Object) -Methode, wenn Sie aus teilweise vertrauenswürdigem Code aufrufen müssen.

Weitere Informationen

Gilt für:

AddProvider(TypeDescriptionProvider, Type)

Quelle:
TypeDescriptor.cs
Quelle:
TypeDescriptor.cs
Quelle:
TypeDescriptor.cs

Fügt einen Typbeschreibungsanbieter für eine Komponentenklasse hinzu.

public:
 static void AddProvider(System::ComponentModel::TypeDescriptionProvider ^ provider, Type ^ type);
public static void AddProvider (System.ComponentModel.TypeDescriptionProvider provider, Type type);
static member AddProvider : System.ComponentModel.TypeDescriptionProvider * Type -> unit
Public Shared Sub AddProvider (provider As TypeDescriptionProvider, type As Type)

Parameter

provider
TypeDescriptionProvider

Das hinzuzufügende TypeDescriptionProvider.

type
Type

Der Type der Zielkomponente.

Ausnahmen

Ein oder beide Parameter sind null.

Hinweise

Die AddProvider(TypeDescriptionProvider, Type) -Methode fügt einen Typbeschreibungsanbieter hinzu, der Typinformationen für die angegebene Klasse, abgeleitete Klassen und alle Instanzen dieser Typen bereitstellt.

Hinweis

Der type Parameter kann ein beliebiger Typ sein, einschließlich einer Schnittstelle. Wenn Sie beispielsweise benutzerdefinierten Typ und instance Informationen für alle Komponenten bereitstellen möchten, geben Sie antypeof(IComponent). Durch die Übergabe typeof(object) wird der Anbieter aufgerufen, um Typinformationen für alle Typen anzugeben.

Diese Methode behält keinen harten Verweis auf ein Objekt bei, sodass sie nicht verhindert, dass Objekte abgeschlossen werden.

Es ist möglich, mehrere Typbeschreibungsanbieter für denselben Typ oder dasselbe Objekt hinzuzufügen. In diesem Fall wird ausschließlich der erste Typbeschreibungsanbieter verwendet, der Typinformationen bereitstellt. Da Typinformationsanbieter in einem Stapel gespeichert werden, ist der letzte hinzugefügte Anbieter der erste abgefragte Anbieter. Dieses Verhalten ermöglicht es, die AddProvider(TypeDescriptionProvider, Type) Methoden und RemoveProvider zum Pushen und Pop-Typbeschreibungsanbieter zu verwenden, die für bestimmte Szenarien erforderlich sind.

Bei erfolgreicher Ausführung ruft diese Methode die Refresh(Type) -Methode für den type -Parameter auf.

Hinweis

Die beiden Versionen dieser Methode führen zu Ergebnissen mit unterschiedlichen Bereichen. Die AddProvider Methode, die einen Object Parameter akzeptiert, wirkt sich nur auf den einzelnen instance der angegebenen Komponente aus. Im Gegensatz dazu wirkt sich die andere Überladung, die einen Type Parameter akzeptiert, auf alle Instanzen der Komponente aus, die durch diesen Typ beschrieben wird.

Verwenden Sie die AddProviderTransparent(TypeDescriptionProvider, Type) -Methode, wenn Sie aus teilweise vertrauenswürdigem Code aufrufen müssen.

Weitere Informationen

Gilt für: