TypeDescriptor.AddProvider Metoda

Definice

Přidá zprostředkovatele popisu typu do seznamu zprostředkovatelů pro tento typ deskriptoru.

Přetížení

AddProvider(TypeDescriptionProvider, Object)

Přidá zprostředkovatele popisu typu pro jednu instanci komponenty.

AddProvider(TypeDescriptionProvider, Type)

Přidá zprostředkovatele popisu typu pro třídu komponenty.

AddProvider(TypeDescriptionProvider, Object)

Zdroj:
TypeDescriptor.cs
Zdroj:
TypeDescriptor.cs
Zdroj:
TypeDescriptor.cs

Přidá zprostředkovatele popisu typu pro jednu instanci komponenty.

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)

Parametry

provider
TypeDescriptionProvider

Příkaz TypeDescriptionProvider , který chcete přidat.

instance
Object

Instance cílové komponenty.

Výjimky

Jeden nebo oba parametry jsou null.

Poznámky

Metoda AddProvider(TypeDescriptionProvider, Object) přidá zprostředkovatele popisu typu, který poskytuje informace o typu pro jednu instanci komponenty. Pokud je zprostředkovatel přidán touto metodou, metoda zprostředkovatele CreateInstance nebude volána, protože instance již existuje.

Tato metoda neudržuje pevný odkaz na komponentu, takže nezabrání dokončení komponenty.

Pro stejný typ nebo objekt je možné přidat více zprostředkovatelů popisu typu. Pokud k tomu dojde, použije se výhradně první zprostředkovatel popisu typu, který poskytuje informace o typu. Vzhledem k tomu, že poskytovatelé informací typu jsou uloženi v zásobníku, bude poslední přidaný poskytovatel první dotazovaný. Toto chování umožňuje AddProvider(TypeDescriptionProvider, Object) používat metody a RemoveProvider pro zprostředkovatele typu push a pop description podle potřeby pro konkrétní scénáře.

V případě úspěchu volá tato metoda metodu Refresh(Object) parametru instance .

Poznámka

Dvě verze této metody vytvářejí výsledky s různými obory. Metoda AddProvider , která přebírá Object parametr, ovlivňuje pouze jednu instanci zadané komponenty. Naproti tomu druhé přetížení, které přebírá Type parametr, ovlivňuje všechny instance komponenty popsané tímto typem.

Pokud potřebujete volat z částečně důvěryhodného kódu, použijte metodu AddProviderTransparent(TypeDescriptionProvider, Object) .

Viz také

Platí pro

AddProvider(TypeDescriptionProvider, Type)

Zdroj:
TypeDescriptor.cs
Zdroj:
TypeDescriptor.cs
Zdroj:
TypeDescriptor.cs

Přidá zprostředkovatele popisu typu pro třídu komponenty.

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)

Parametry

provider
TypeDescriptionProvider

Příkaz TypeDescriptionProvider , který chcete přidat.

type
Type

Cílová Type komponenta.

Výjimky

Jeden nebo oba parametry jsou null.

Poznámky

Metoda AddProvider(TypeDescriptionProvider, Type) přidá zprostředkovatele popisu typu, který poskytuje informace o typu pro zadanou třídu, odvozené třídy a všechny instance těchto typů.

Poznámka

Parametr type může být libovolný typ, včetně rozhraní. Pokud chcete například zadat informace o vlastním typu a instanci pro všechny komponenty, zadejte typeof(IComponent). Předání typeof(object) zavolá zprostředkovatele a poskytne informace o typu pro všechny typy.

Tato metoda neudržuje pevný odkaz na žádný objekt, takže nebrání dokončení objektů.

Pro stejný typ nebo objekt je možné přidat více zprostředkovatelů popisu typu. Pokud k tomu dojde, použije se výhradně první zprostředkovatel popisu typu, který poskytuje informace o typu. Vzhledem k tomu, že poskytovatelé informací typu jsou uloženi v zásobníku, bude poslední přidaný poskytovatel první dotazovaný. Toto chování umožňuje AddProvider(TypeDescriptionProvider, Type) používat metody a RemoveProvider pro zprostředkovatele typu push a pop description podle potřeby pro konkrétní scénáře.

V případě úspěchu volá tato metoda metodu Refresh(Type) parametru type .

Poznámka

Dvě verze této metody vytvářejí výsledky s různými obory. Metoda AddProvider , která přebírá Object parametr, ovlivňuje pouze jednu instanci zadané komponenty. Naproti tomu druhé přetížení, které přebírá Type parametr, ovlivňuje všechny instance komponenty popsané tímto typem.

Pokud potřebujete volat z částečně důvěryhodného kódu, použijte metodu AddProviderTransparent(TypeDescriptionProvider, Type) .

Viz také

Platí pro