TypeDescriptor.AddProvider Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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.
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.