TypeDescriptionProvider.CreateInstance 方法

定義

建立對象,這個物件可以替代另一個數據類型。

public:
 virtual System::Object ^ CreateInstance(IServiceProvider ^ provider, Type ^ objectType, cli::array <Type ^> ^ argTypes, cli::array <System::Object ^> ^ args);
public virtual object CreateInstance(IServiceProvider provider, Type objectType, Type[] argTypes, object[] args);
abstract member CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
override this.CreateInstance : IServiceProvider * Type * Type[] * obj[] -> obj
Public Overridable Function CreateInstance (provider As IServiceProvider, objectType As Type, argTypes As Type(), args As Object()) As Object

參數

provider
IServiceProvider

一個可選的服務提供者。

objectType
Type

要創造的物件類型。 此參數永遠不是 null

argTypes
Type[]

一個可選的類型陣列,代表要傳遞給物件建構子的參數類型。 此陣列長度可為 null 零或。

args
Object[]

一個可選的參數值陣列,可傳遞給物件的建構子。

傳回

代入 Object

備註

IServiceProvider由參數指定的 provider 由類別的方法TypeDescriptor傳遞。TypeDescriptor.CreateInstanceprovider 不是 null,則可由型別描述提供者使用服務提供者取得建立呼叫的額外上下文。

CreateInstance該方法為 virtual ,且預設回傳若為 ,null則返回該方法的Activator.CreateInstance結果。parentparent 不是 null,此方法將啟動 CreateInstance 母提供者的方法。

給繼承者的注意事項

如果導出類別不願意提供替代實例,它應該直接呼叫基礎實作。

適用於

另請參閱