TypeDescriptor.CreateInstance Methode

Definition

Erstellt ein Objekt, das durch einen anderen Datentyp ersetzt werden kann.

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);
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

Parameter

provider
IServiceProvider

Der Dienstanbieter, der einen TypeDescriptionProvider Dienst bereitstellt. Dieser Parameter kann null sein.

objectType
Type

Das Type zu erstellende Objekt.

argTypes
Type[]

Ein optionales Array von Parametertypen, das an den Konstruktor des Objekts übergeben werden soll. Dieser Parameter kann ein Array mit null Länge sein null .

args
Object[]

Ein optionales Array von Parameterwerten, die an den Konstruktor des Objekts übergeben werden sollen. Ist dies nicht nullder Fall, muss die Anzahl der Elemente identisch sein mit argTypes.

Gibt zurück

Eine Instanz des Ersatzdatentyps, wenn ein zugeordneter TypeDescriptionProvider Datentyp gefunden wird; andernfalls null.

Ausnahmen

objectTypeist null, oder args ist, wenn argTypes nicht nullnull .

argTypes und args haben unterschiedliche Anzahl von Elementen.

Hinweise

Die CreateInstance Methode sucht nach einem TypeDescriptionProvider , der dem angegebenen objectType Datentyp zugeordnet ist. Diese Methode versucht zunächst, einen Typbeschreibungsanbieter aus dem provider Parameter abzurufen. Wenn dies fehlschlägt, durchsucht sie eigene interne Tabellen für einen Anbieter (diese Einträge wurden über vorherige Aufrufe erstellt).AddProvider Wenn ein Anbieter gefunden wird, delegieren diese Methode den Erstellungsaufruf an dieses Objekt.

Hinweise für Vererber

Wenn die abgeleitete Klasse keine Ersatzinstanz bereitstellt, sollte diese Methode die Basisimplementierung aufrufen.

Gilt für:

Weitere Informationen