如何动态创建Control对象,并为其指定初始属性值
2008-07-23 11:35
351 查看
见代码:
void DynamicControl(string tag,string ctrType)
{
string assName = typeof(System.Windows.Forms.Form).AssemblyQualifiedName;
string assInfo = assName.Substring(assName.IndexOf(","));
Type type = System.Type.GetType("System.Windows.Forms." + ctrType + assInfo, true);
Control ctrl = (Control)Activator.CreateInstance(type);
Type t = ctrl.GetType();
t.InvokeMember("Tag", BindingFlags.SetProperty, null, ctrl, new object[1] { tag });
t.InvokeMember("Name", BindingFlags.SetProperty, null, ctrl, new object[1] { name });
t.InvokeMember("Text", BindingFlags.SetProperty, null, ctrl, new object[1] { "Test" });
this.Controls.Add(ctrl);
}
void DynamicControl(string tag,string ctrType)
{
string assName = typeof(System.Windows.Forms.Form).AssemblyQualifiedName;
string assInfo = assName.Substring(assName.IndexOf(","));
Type type = System.Type.GetType("System.Windows.Forms." + ctrType + assInfo, true);
Control ctrl = (Control)Activator.CreateInstance(type);
Type t = ctrl.GetType();
t.InvokeMember("Tag", BindingFlags.SetProperty, null, ctrl, new object[1] { tag });
t.InvokeMember("Name", BindingFlags.SetProperty, null, ctrl, new object[1] { name });
t.InvokeMember("Text", BindingFlags.SetProperty, null, ctrl, new object[1] { "Test" });
this.Controls.Add(ctrl);
}
相关文章推荐
- 【PB】如何创建一个动态的数据窗口对象?
- 如何动态创建克隆对象以及克隆对象的简单用法
- 如何利用Skyline6.1的接口创建动态对象DynamicObject
- 如何通过配置文件动态创建对象
- [Ruby]如何动态创建一个对象
- PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
- 关于如何利用原生js动态给一个空对象添加属性以及属性值
- 如何在SpringMVC框架中利用Java反射机制和Javassist实现Java对象、属性、注解的动态创建生成
- PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
- 【javascript】table对象操作,动态创建,删除指定行列
- java中如何取到一个对象的所有属性值,并且在创建一个相同的对象
- 如何动态创建tabControl的Item
- 【PB】如何创建一个动态的数据窗口对象?
- 如何创建一个动态的数据窗口对象
- java如何创建一个指定的日期对象
- C#如何根据字符串动态的创建对象(类)?
- 如何创建一个动态的数据窗口对象
- C#如何根据字符串动态的创建对象(类)
- 速战速决 (5) - PHP: 动态地创建属性和方法, 对象的复制, 对象的比较, 加载指定的文件, 自动加载类文件, 命名空间
- C++中如何在指定的内存中创建新对象