DesignerSerializationManager.CreateInstance 方法

定义

创建类型的实例。

protected:
 virtual System::Object ^ CreateInstance(Type ^ type, System::Collections::ICollection ^ arguments, System::String ^ name, bool addToContainer);
protected virtual object CreateInstance (Type type, System.Collections.ICollection arguments, string name, bool addToContainer);
protected virtual object CreateInstance (Type type, System.Collections.ICollection? arguments, string? name, bool addToContainer);
abstract member CreateInstance : Type * System.Collections.ICollection * string * bool -> obj
override this.CreateInstance : Type * System.Collections.ICollection * string * bool -> obj
Protected Overridable Function CreateInstance (type As Type, arguments As ICollection, name As String, addToContainer As Boolean) As Object

参数

type
Type

要创建的实例的类型。

arguments
ICollection

类型的构造函数的参数。 这可以为 null 或空集合,以调用无参数构造函数。

name
String

要为对象提供的名称。 如果为 null,将不会为对象提供名称,除非将该对象添加到某个容器并且该容器为该对象提供名称。

addToContainer
Boolean

如果要在对象实现 IComponent 时向容器中添加对象,则为 true;否则为 false

返回

type 指定的类型的新实例。

例外

type 不具有采用 arguments 中包含的参数的构造函数。

注解

序列化程序在尝试创建类型的实例时调用此方法。 默认实现创建类型的新实例,或者它可能会返回现有实例,具体取决于 和 RecycleInstances 属性的值PreserveNames。 方法 CreateInstance 使用反射来创建实例,并将对参数执行一些泛型 IConvertible 转换以查找匹配的构造函数。

适用于

另请参阅