TypeDescriptor.CreateInstance Metoda

Definicja

Tworzy obiekt, który może zastąpić inny typ danych.

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

Dostawca usług, który zapewnia usługę TypeDescriptionProvider . Ten parametr może mieć wartość null.

objectType
Type

Obiekt Type do utworzenia.

argTypes
Type[]

Opcjonalna tablica typów parametrów, które mają zostać przekazane do konstruktora obiektu. Ten parametr może mieć null wartość lub tablicę o zerowej długości.

args
Object[]

Opcjonalna tablica wartości parametrów do przekazania do konstruktora obiektu. Jeśli nie null, liczba elementów musi być taka sama jak argTypes.

Zwraca

Wystąpienie zastępczego typu danych, jeśli zostanie znalezione skojarzone TypeDescriptionProvider ; nullw przeciwnym razie .

Atrybuty

Wyjątki

objectType jest null, lub args jest null , gdy argTypes nie nulljest .

argTypes i args mają różne elementy.

Uwagi

Metoda CreateInstance wyszuka element TypeDescriptionProvider skojarzony z określonym objectType typem danych. Ta metoda najpierw próbuje uzyskać dostawcę opisu typu z parametru provider . Jeśli to się nie powiedzie, przeszukuje własne tabele wewnętrzne dostawcy (te wpisy zostały utworzone za pomocą poprzednich wywołań metody AddProvider). Jeśli znajdzie dostawcę, ta metoda deleguje wywołanie tworzenia do tego obiektu.

Notatki dotyczące dziedziczenia

Jeśli klasa pochodna nie udostępnia wystąpienia zastępczego, ta metoda powinna wywołać implementację podstawową.

Dotyczy

Zobacz też