直升机,
我有两种表单:form1
和form2
。
当我按下form1中的按钮时,我想打开form2
并且form1
仍然可见。
代码:
private void button_Click_1(object sender, EventArgs e)
{
form2 form = new form2();
form.Show();
}
当我在form2
中按[x](关闭按钮)时,我想隐藏它。
form2中的代码:
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
e.Cancel = true;
Hide();
}
}
问题是当我再次按下来自form1
的button1时。它会打开form2
,但就像它没有被隐藏一样,它会像第一次一样打开它。我不想关闭form2
,因为它是一个在隐藏表单时计数的计时器。当我按[x]时如何隐藏form2
,然后再次按下按钮1重新出现,而不是像第一次那样重新打开?
谢谢!
答案 0 :(得分:4)
当您编写form2 form = new form2()
时,您创建了另一个实例,因此您必须保存该实例并使用相同的实例:
private Form form;
private void button_Click_1(object sender, EventArgs e)
{
if(form==null)
form = new Form2();
form.Show();
}