DesignerSerializationManager.CreateInstance 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
创建类型的实例。
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 转换以查找匹配的构造函数。