TypeDescriptor.CreateInstance Metoda

Definice

Vytvoří objekt, který může nahradit jiný datový typ.

public:
 static System::Object ^ CreateInstance(IServiceProvider ^ provider, Type ^ objectType, cli::array <Type ^> ^ argTypes, cli::array <System::Object ^> ^ args);
public static object? CreateInstance(IServiceProvider? provider, Type objectType, Type[]? argTypes, object?[]? args);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static object CreateInstance(IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
public static object? CreateInstance(IServiceProvider? provider, Type objectType, Type[]? argTypes, object[]? args);
public static object CreateInstance(IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
static member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
Public Shared Function CreateInstance (provider As IServiceProvider, objectType As Type, argTypes As Type(), args As Object()) As Object

Parametry

provider
IServiceProvider

Poskytovatel služeb, který poskytuje TypeDescriptionProvider službu. Tento parametr může být null.

objectType
Type

Objekt Type , který se má vytvořit.

argTypes
Type[]

Volitelné pole typů parametrů, které se mají předat konstruktoru objektu. Tento parametr může být null nebo pole nulové délky.

args
Object[]

Volitelné pole hodnot parametrů, které se mají předat konstruktoru objektu. Pokud ne null, počet prvků musí být stejný jako argTypes.

Návraty

Instance náhradního datového typu, pokud je nalezen přidružený TypeDescriptionProvider ; jinak , null.

Atributy

Výjimky

objectType is null, or args is null when argTypes is not null.

argTypes a args mají jiný počet prvků.

Poznámky

Metoda CreateInstance vyhledá TypeDescriptionProvider , který je přidružen k zadanému objectType datovému typu. Tato metoda se nejprve pokusí získat zprostředkovatele popisu typu z parametru provider . Pokud se to nezdaří, prohledá vlastní interní tabulky pro zprostředkovatele (tyto položky byly vytvořeny prostřednictvím předchozích volání AddProvider). Pokud najde zprostředkovatele, tato metoda deleguje volání vytvoření na tento objekt.

Poznámky pro dědice

Pokud odvozená třída neposkytuje náhradní instanci, tato metoda by měla volat základní implementaci.

Platí pro

Viz také