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.

Комментарии

Заданный IServiceProviderprovider параметром передается методом TypeDescriptor.CreateInstanceTypeDescriptor класса. Если provider это не nullтак, поставщик услуг может использоваться поставщиком описания типа для получения дополнительного контекста о вызове создания.

Метод CreateInstance имеет значение virtual и, по умолчанию, возвращает результат Activator.CreateInstance метода, если parent это null. Если parent это не nullтак, этот метод вызовет CreateInstance метод родительского поставщика.

Примечания для тех, кто наследует этот метод

Если производный класс не заинтересован в предоставлении замещающего экземпляра, он должен просто вызвать базовую реализацию.

Применяется к

См. также раздел