C#两个窗口打开另一个以后,前一个如何关闭

form1中按一下button1就弹出form2但是如何把form1关闭呢?最好别用visible```我是菜菜鸟·请大侠赐教·看来form1是真的不能关了... form1中按一下 button1 就弹出form2 但是如何把form1关闭呢?
最好别用visible```
我是菜菜鸟·请大侠赐教·
看来form1是真的不能关了
展开
 我来答
烟卷不抽烟
2010-02-18 · TA获得超过497个赞
知道小有建树答主
回答量:95
采纳率:0%
帮助的人:178万
展开全部
在button1_Click函数体的最后一句写上
this.Close();

其次,你要在弹出form2后关掉自己。这需要将form2定义在form1外。你可以在Program中生成form2的变量,但是不弹出来。在button1_Click中,使用form2.Show()显示。

如果必须将form2放在form1里的话,form1就不能够完全关闭。只能用this.Hide()进行隐藏。
justkeepmoving
2010-02-18 · TA获得超过486个赞
知道小有建树答主
回答量:462
采纳率:0%
帮助的人:500万
展开全部
楼主,如果你打开另一个窗体后,要关闭前一个的话,就用this.close();
但是,如果你的窗体1是主窗体的话,就不能关闭的,因为你关的话,程序就结束了哈!只能隐藏哈!this.Hide()!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
独孤独虫虫
2010-02-18 · 超过13用户采纳过TA的回答
知道答主
回答量:32
采纳率:0%
帮助的人:37.3万
展开全部
两种方法:第一种在窗体2中的某个方法里
遍历进程上的所有窗体,找到Form1,
下面用c#写个示例:
foreach(Form form in Application.OpenForms)
{
if(form.Name=="form1")
{
form1 newForm=form as form1;
newForm.close();
break;
}

}
第二种方法是,打开窗体form2后,关闭form1,正如一楼所说的
void button1_Click(Object sender,eventargs e)
{
...
Form2 newForm=new Form2();
newForm.Show();
this.Close();
}
//以上代码均为未经测试,应该就是这样写了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式