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 或 長度為零的陣列。

args
Object[]

一個可選的參數值陣列,可傳遞給物件的建構子。 若 , null則元素數必須等於 argTypes

傳回

若找到關聯TypeDescriptionProvider資料,則為替換資料型別的實例;否則,。 null

例外狀況

objectTypenull,或argsargTypes 不是 null時 。null

argTypesargs 元素數量不同。

備註

CreateInstance方法會搜尋與指定objectType資料型別相關聯的 。TypeDescriptionProvider 此方法首先嘗試從 provider 參數中取得型別描述提供者。 若此方法失敗,則會自行內部資料表尋找提供者(這些條目是透過先前呼叫 建立 AddProvider的)。 如果找到提供者,這個方法會將建立呼叫委派給該物件。

給繼承者的注意事項

若導出類別未提供替代實例,此方法應呼叫基礎實作。

適用於

另請參閱