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