TypeDescriptor.CreateInstance メソッド

定義

別のデータ型に置き換えることができるオブジェクトを作成します。

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

パラメーター

provider
IServiceProvider

TypeDescriptionProvider サービスを提供するサービス プロバイダー。 このパラメーターは、null に設定できます。

objectType
Type

作成するオブジェクトの Type

argTypes
Type[]

オブジェクトのコンストラクターに渡されるパラメーター型の省略可能な配列。 このパラメーターには、 null または長さ 0 の配列を指定できます。

args
Object[]

オブジェクトのコンストラクターに渡すパラメーター値の省略可能な配列。 nullしない場合、要素の数はargTypesと同じである必要があります。

返品

関連付けられた TypeDescriptionProvider が見つかった場合は代替データ型のインスタンス。それ以外の場合は null

例外

objectTypenullか、argTypesnullされていない場合はargsnull

argTypesargs は要素の数が異なります。

注釈

CreateInstance メソッドは、指定したobjectTypeデータ型に関連付けられているTypeDescriptionProviderを検索します。 このメソッドは、まず、 provider パラメーターから型記述プロバイダーを取得しようとします。 これが失敗した場合は、プロバイダーの独自の内部テーブルを検索します (これらのエントリは、以前の AddProvider 呼び出しによって作成されました)。 プロバイダーが見つかると、このメソッドは作成呼び出しをそのオブジェクトに委任します。

注意 (継承者)

派生クラスが代替インスタンスを提供しない場合、このメソッドは基本実装を呼び出す必要があります。

適用対象

こちらもご覧ください