我有两种形式,FormA和FormB。

FormA有两个按钮,一个用于打开FormB,一个用于退出。
FormB有一个按钮,可以关闭FormB并重新打开FormA。

我的代码是这样的:

public class FormA
{
    private void btnOpenformB_Click(System.Object sender, System.EventArgs e)
    {
        FormB B = new FormB();
        this.Hide();
        B.Show();
    }
    private void btnExit_Click(System.Object sender, System.EventArgs e)
    {
        this.Close();
    }
}

public class FormB
{
    private void btnReopenA_Click(System.Object sender, System.EventArgs e)
    {
        FormA A = new FormA();
        this.Close();
        A.Show();
    }
}


我的问题是,当我单击FormB上的按钮以重新打开FormA时,并且当我单击FormA上的退出按钮时,它没有停止调试。我该怎么办?谢谢!

最佳答案

public class FormA {
  private void btnOpenformB_Click(System.Object sender, System.EventArgs e) {
    FormB B = new FormB();
    this.Hide();
    B.Show(this);//Note we pass in the Owner here
  }
  private void btnExit_Click(System.Object sender, System.EventArgs e) {
    this.Close();
  }
}

public class FormB {
  private void btnReopenA_Click(System.Object sender, System.EventArgs e) {
    if(Owner!=null) Owner.Show();
    this.Close();
  }
}

关于c# - 在Windows Form App中关闭表单?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18589039/

10-13 02:44