private void button1_Click(object sender, EventArgs e) {
string formName = this.textBox1.Text;
ObjectHandle objectHandle = Activator.CreateInstance(null, formName);
Form form = (Form)objectHandle.Unwrap();
form.ShowDialog();
}
这是通过反射动态创建窗体的方法。在文本框中要将窗体类的完整名称写出来,包括命名空间,否则创建会失败。
转载自 SOSO提问
本文介绍了一种使用C#反射机制动态创建窗体实例的方法。具体实现方式为:通过文本框输入目标窗体的全名(包括命名空间),然后利用Activator的CreateInstance方法结合传入的窗体名称来实例化指定的窗体,并显示为模态对话框。
1606

被折叠的 条评论
为什么被折叠?



