TypeDescriptor.CreateInstance Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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);
[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);
public static object CreateInstance (IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
static member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
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
.
- argTypes
- Type[]
Opcjonalna tablica typów parametrów do przekazania do konstruktora obiektu. Ten parametr może być null
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 ; w przeciwnym razie null
.
- Atrybuty
Wyjątki
objectType
to null
, lub args
jest null
, gdy argTypes
nie null
jest .
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ń do AddProvidermetody ). Jeśli znajdzie dostawcę, ta metoda deleguje wywołanie tworzenia do tego obiektu.
Uwagi dotyczące dziedziczenia
Jeśli klasa pochodna nie udostępnia wystąpienia zastępczego, ta metoda powinna wywołać implementację podstawową.