다음을 통해 공유


TypeDescriptor.CreateInstance 메서드

정의

다른 데이터 형식 대신 사용할 수 있는 개체를 만듭니다.

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

매개 변수

provider
IServiceProvider

TypeDescriptionProvider 서비스를 제공하는 서비스 공급자입니다. 이 매개 변수는 null일 수 있습니다.

objectType
Type

만들 개체의 Type입니다.

argTypes
Type[]

개체의 생성자에 전달할 매개 변수 형식의 선택적 배열입니다. 이 매개 변수는 null 또는 0길이 배열일 수 있습니다.

args
Object[]

개체의 생성자에 전달할 매개 변수 값의 선택적 배열입니다. null이 아니면 요소 개수가 argTypes와 동일해야 합니다.

반환

연결된 TypeDescriptionProvider가 있으면 대체 데이터 형식의 인스턴스이고, 그렇지 않으면 null입니다.

특성

예외

argTypesnull이 아닐 때 objectTypenull이거나 argsnull입니다.

argTypesargs의 요소 수가 다릅니다.

설명

메서드는 CreateInstance 지정된 objectType 데이터 형식과 연결된 를 검색 TypeDescriptionProvider 합니다. 이 메서드는 먼저 매개 변수에서 형식 설명 공급자를 가져오려고 시도합니다 provider . 이 작업이 실패하면 자체 내부 테이블에서 공급자를 검색합니다(이러한 항목은 에 대한 이전 호출을 AddProvider통해 생성됨). 공급자를 찾으면 이 메서드는 생성 호출을 해당 개체에 위임합니다.

상속자 참고

파생 클래스가 대체 instance 제공하지 않는 경우 이 메서드는 기본 구현을 호출해야 합니다.

적용 대상

추가 정보