当我从表单1中单击按钮时,将显示表单2的数据。所以,我再次点击表单1中的按钮。下一个数据将以新的形式2添加,但在仍然显示之前形成。因此我有2个表格显示。我怎么能在之前关闭表格并显示下一个表格?
答案 0 :(得分:1)
为了实现这一点,您需要存储对表单的引用并使用它进行操作。
你想要什么 - 每次关闭Form2
并再次打开:
public class Form1
{
private Form2 _form2;
public Button1_Click(object sender, EventArgs e)
{
if (_form2 != null)
{
_form2.Close();
}
_form2 = new Form2();
_form2.Label1.Text = DateTime.Now.ToString(); // or any other actions with form
_form2.Show();
}
}
它将关闭以前使用的表单并每次创建一个新表单。
您还可以做什么 - 重复使用此表单并添加某种"关闭表单"按钮:
public class Form1
{
private Form2 _form2;
public Button1_Click(object sender, EventArgs e)
{
if (_form2 == null)
{
_form2 = new Form2();
_form2.Show();
}
_form2.Label1.Text = DateTime.Now.ToString(); // or any other actions with form
}
public Button2_Click(object sender, EventArgs e) // close button
{
if (_form2 != null) {
_form2.Close();
_form2 = null;
}
}
}
它会在第一时间创建一个表单,然后在单击按钮时更改其文本。