知道form名字(string型),怎么打开它

guber 2007-10-25 12:02:36
知道form名字(string型),怎么打开它
...全文
95 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
guber 2007-10-26
  • 打赏
  • 举报
回复
怎么没有人回答呀,用反射能不能关闭呢
guber 2007-10-25
  • 打赏
  • 举报
回复
form是个窗体
randomfeel 2007-10-25
  • 打赏
  • 举报
回复
这个...lz说得含糊了...
是类名还是对象名啊...
对象名的话就 frm1.show()了
guber 2007-10-25
  • 打赏
  • 举报
回复
谢谢,上面说的反射方法能用,但是有个问题,为什么只能show(),而关闭和隐藏都没有作用
北京的雾霾天 2007-10-25
  • 打赏
  • 举报
回复


string fullName="Application1.Form1";
Assembly asm = Assembly.GetExecutingAssembly();
Form frm = asm.CreateInstance(fullName) as Form;
if (frm != null)
{
frm.Show();
}
nopingno 2007-10-25
  • 打赏
  • 举报
回复
dim form as new form1
form.show()
mqmmx 2007-10-25
  • 打赏
  • 举报
回复
窗体名要写全包括命名空间的全名才如
如窗体名为Form1,它在命名空间abc下,则要写成

Form frmWindows = (Form)Assembly.Load(Assembly.GetExecutingAssembly().FullName).CreateInstance("abc.Form1");
frmWindows.Show();

mqmmx 2007-10-25
  • 打赏
  • 举报
回复
反射
如前体名为Form1可以如下写法
C#
Form frmWindows = (Form)Assembly.Load(Assembly.GetExecutingAssembly().FullName).CreateInstance("Form1");
frmWindows.Show();

vb (没试过,可能行吧)
dim frmWindows as Form
frmWindows = CType(Assembly.Load(Assembly.GetExecutingAssembly().FullName).CreateInstance("Form1"),Form)

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧