如何在 C# 中打开新表单和关闭当前表单
在开发 C# 应用程序时,您可能会遇到需要以下情况:从当前表单中的按钮打开一个新表单,关闭当前表单,然后将焦点放在新打开的表单上。以下是实现此目标的方法:
史蒂夫的解决方案
一种常见的方法是使用以下代码:
private void Button1_Click(object sender, EventArgs e) { var form2 = new Form2(); form2.Show(); this.Close(); }
但是,此解决方案有一个缺陷。当调用 this.Close() 时,当前表单和新打开的表单(form2)都会被释放。为了防止这种情况,您应该考虑隐藏当前表单而不是关闭它。
更正的解决方案
要打开新表单并关闭当前表单,请使用以下命令代码:
private void OnButton1Click(object sender, EventArgs e) { this.Hide(); var form2 = new Form2(); form2.Closed += (s, args) => this.Close(); form2.Show(); }
在此更正解决方案:
此方法确保新表单 (Form2) 打开并聚焦,而当前表单 (Form1) 被隐藏并随后关闭。
以上是如何在C#中正确打开新窗体并关闭当前窗体?的详细内容。更多信息请关注PHP中文网其他相关文章!