110,533
社区成员
发帖
与我相关
我的任务
分享
public Polygon(Form fm,object obj)
{
List<Save> list=obj as List<Save>;
this.list = list;
this.fm=fm;
}
也行的不过Save 必须和Polygon在一个文件中也就是引用版本命名空间必须一致 Assembly asm = Assembly.Load("UITestDesignTools1.0");
Type tPolygon = asm.GetType("polygon_Component.Polygon");
List<ClassLibrary2.Saves> param2 = new List<ClassLibrary2.Saves>();
param2.Add(new ClassLibrary2.Saves() { name = 1001 });
object my = Activator.CreateInstance(tPolygon, new Object[] { this, param2 });
Assembly asm = Assembly.Load("UITestDesignTools1.0");
//得到结构体Type
Type tsave = asm.GetType("polygon_Component.Save");
//给结构体赋值
dynamic param1 = Activator.CreateInstance(tsave);
param1.name = 12;
//得到Polygon类
Type tPolygon = asm.GetType("polygon_Component.Polygon");
//得到构造函数最后一个参数类型
var constructor = tPolygon.GetConstructors().Single().GetParameters().Last().ParameterType;
//实例化参数List<Save>
dynamic listParam1 = Activator.CreateInstance(constructor);
listParam1.Add(param1);
//实例化Polygon类
object obj = Activator.CreateInstance(tPolygon, new Object[] { this, listParam1 });