gpt4 book ai didi

C# 如果有 3 个 Form ,我可以显示 Form3 并关闭 Form1 和 Form2 吗?

转载 作者:行者123 更新时间:2023-11-30 14:30:34 25 4
gpt4 key购买 nike

我有 3 个表格。我想在 Form2 中单击按钮时显示 Form3 并关闭 Form1, Form2 。这是我的代码。当我运行这段代码时,它可以显示 Form3 但不能关闭 Form1

Form1

private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.ShowDialog();
//frm2.Show();
}

Form2

private void button1_Click(object sender, EventArgs e)
{
Form3 frm3 = new Form3();
Form1 frm1 = new Form1();
frm3.Show();

frm1.Hide(); // It not close Form1
this.Hide();
// frm1.Close();
// this.Close();
}

最佳答案

问题:您正在创建 Form1 的新实例,然后试图关闭/隐藏它。

解决方案:您需要获取内存中已有的Form1实例,然后隐藏或关闭它。

替换这个:

Form1 frm1 = new Form1();
frm1.Hide(); // It not close Form1

有了这个:

Form1 form1 = (Form1) Application.OpenForms["Form1"];
Form3 frm3 = new Form3();
frm3.Show();
form1.Hide();

关于C# 如果有 3 个 Form ,我可以显示 Form3 并关闭 Form1 和 Form2 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22450472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com