这是我的一个类库,部分代码如下:
namespace YPSoft.TrafficBill
{
public partial class FormTrafficBillIn : Form
{
/// <summary>
/// 构造函数
/// </summary>
public FormTrafficBillIn(string billID,string state)
{
InitializeComponent();
v_str_LItemID = billID;
v_str_State = state; MessageBox.Show("success");
}
}
}我现在在另一类库里通过反射来调用这个类里的窗体
我是这样写的
object[] obj = new object[] { "1","Edit"};
Assembly.Load("YPSoft.TrafficBill").CreateInstance("YPSoft.TrafficBill.FormTrafficBillIn", true, BindingFlags.Public, null, obj, null, null);程序运行时提示"未找到类型“YPSoft.TrafficBill.FormTrafficBillIn”上的构造函数。"
namespace YPSoft.TrafficBill
{
public partial class FormTrafficBillIn : Form
{
/// <summary>
/// 构造函数
/// </summary>
public FormTrafficBillIn(string billID,string state)
{
InitializeComponent();
v_str_LItemID = billID;
v_str_State = state; MessageBox.Show("success");
}
}
}我现在在另一类库里通过反射来调用这个类里的窗体
我是这样写的
object[] obj = new object[] { "1","Edit"};
Assembly.Load("YPSoft.TrafficBill").CreateInstance("YPSoft.TrafficBill.FormTrafficBillIn", true, BindingFlags.Public, null, obj, null, null);程序运行时提示"未找到类型“YPSoft.TrafficBill.FormTrafficBillIn”上的构造函数。"
// 有参数构造函数创建对象
Assembly asm = Assembly.GetExecutingAssembly();
Object[] parameters = new Object[2]; // 定义构造函数需要的参数
parameters[0] = 3;
parameters[1] = 5;Object obj = asm.CreateInstance("Reflection4.Calculator", true, BindingFlags.Default, null, parameters, null, null);