Когда вы вызываете ShowDialog
в форме, она запускается до тех пор, пока форма не будет закрыта, для свойства DialogResult
формы будет установлено значение, отличное от None
, или дочерняя кнопка со свойством DialogResult
, отличным от None
нажата. Так что вы могли бы сделать что-то вроде
public partial class Form1
{
...
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
newform.ShowDialog();
// We get here when newform's DialogResult gets set
this.Show();
}
}
public partial class Form2
{
...
private void button1_Click(object sender, EventArgs e)
{
// This hides the form, and causes ShowDialog() to return in your Form1
this.DialogResult = DialogResult.OK;
}
}
Хотя если вы ничего не делаете, а только возвращаетесь из формы при нажатии кнопки, вы можете просто установить свойство DialogResult
для Form2.button1 в конструкторе форм, и вам не понадобится обработчик событий в Form2 вообще.