请教:vs2005winform如何通过变量(存有窗体名称)打开新的窗体?
主要目的,通过点击treeview打开名称等于Node.Text的窗体。
例如:string f1=Node.Text;
Form form = new f1();//当f1="登录"时打开登录窗体
form.Show();
应该如何实现呢?
谢谢!
主要目的,通过点击treeview打开名称等于Node.Text的窗体。
例如:string f1=Node.Text;
Form form = new f1();//当f1="登录"时打开登录窗体
form.Show();
应该如何实现呢?
谢谢!
拼写有可能不对 就是这样了
Type frmType=Type.GetType(f1, false, true);
Form form = Activator.CreateInstance(frmType);//当f1="登录"时打开登录窗体
form.Show();
Form form = new 登录();
form.Show();
目的:
string f1=="登录";
Form form = new f1();//希望用f1打开登录窗体,因为f1内容是不断变化的。
form.Show();
应该如何实现呢?
谢谢!
Form form = Activator.CreateInstance(frmType);//当f1="登录"时打开登录窗体错误1无法将类型“object”隐式转换为“System.Windows.Forms.Form”。存在一个显式转换(是否缺少强制转换?)
Type frmType=Type.GetType(f1, false, true);
Form form = Activator.CreateInstance(frmType);//当f1="登录"时打开登录窗体
form.Show();
System.ArgumentNullException: 值不能为空。
参数名: type
在 System.Activator.CreateInstance(Type type, Boolean nonPublic)
在 System.Activator.CreateInstance(Type type)
在 x1.Form0.treeView1_AfterSelect(Object sender, TreeViewEventArgs e)
Form form = (Form)Activator.CreateInstance(frmType);************** 异常文本 **************
System.ArgumentNullException: 值不能为空。
参数名: type
在 System.Activator.CreateInstance(Type type, Boolean nonPublic)
在 System.Activator.CreateInstance(Type type)
在 x1.Form0.treeView1_AfterSelect(Object sender, TreeViewEventArgs e)
-----------------------------------------------------------------------------
这个是类型没有找到!你试试把命名空间加到类型名前面!
谢谢wzd24(牧野)(衣带渐宽终不悔,为伊消得人憔悴)
谢谢!
不好意思,给分时输错了行.