纸上得来终觉浅,绝知此事要躬行。

 

C# 反射之关于构造函数的应用

示例:

var type = Type.GetType("JRogerInventory.MainWindow");
var constructor = type.GetConstructor(new[] { type });
var obj = constructor.Invoke(new object[] { this.OwnerWindow });
var win = obj as Window;

if (win == null) return;

win.Show();

分析:

代码很简单。获取要调用对象的类型存入 type 变量,调用 GetConstructor 并传入对象类型返回构造函数存入 constructor,通过 constructor 的 Invoke 方法调用 type 对象的构造函数,如果有参数,按顺序传入参数即可,返回要创建的实例。到此创建完成。

posted on 2014-02-15 23:23  JRoger  阅读(750)  评论(0编辑  收藏  举报

导航