Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

TypeDescriptor.CreateInstance Method (IServiceProvider, Type, Type[], Object[])


Creates an object that can substitute for another data type.

Namespace:   System.ComponentModel
Assembly:  System (in System.dll)

public static object CreateInstance(
	IServiceProvider provider,
	Type objectType,
	Type[] argTypes,
	object[] args


Type: System.IServiceProvider

The service provider that provides a TypeDescriptionProvider service. This parameter can be null.

Type: System.Type

The Type of object to create.

Type: System.Type[]

An optional array of parameter types to be passed to the object's constructor. This parameter can be null or an array of zero length.

Type: System.Object[]

An optional array of parameter values to pass to the object's constructor. If not null, the number of elements must be the same as argTypes.

Return Value

Type: System.Object

An instance of the substitute data type if an associated TypeDescriptionProvider is found; otherwise, null.

Exception Condition

objectType is null, or args is null when argTypes is not null.


argTypes and args have different number of elements.

The CreateInstance method will search for a TypeDescriptionProvider that is associated with the specified objectType data type. This method first tries to obtain a type description provider from the provider parameter. If this fails, it searches its own internal tables for a provider (these entries were created through previous calls to AddProvider). If it finds a provider, this method will delegate the creation call to that object.

Notes to Inheritors:

If the derived class does not provide a substitute instance, this method should call the base implementation.

.NET Framework
Available since 2.0
Return to top
© 2016 Microsoft