.ShowDialog()を使用している場合は、DialogResultプロパティを使用して結果を取得できます。 Form1上にあなたのクリックイベントハンドラで次に
public void newWindow()
{
Form1 nw = new Form1();
DialogResult result = nw.ShowDialog();
//do something after the dialog closed...
}
:あなたは、ダイアログなどの新しいフォームを開くにはしたくない場合は
private void buttonOk_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.OK;
}
private void buttonCancel_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
、あなたはこれを行うことができます。
public void newWindow()
{
Form2 nw = new Form2();
nw.FormClosed += nw_FormClosed;
nw.Show();
}
void nw_FormClosed(object sender, FormClosedEventArgs e)
{
var form = sender as Form2;
form.FormClosed -= nw_FormClosed; //unhook the event handler
//you can still retrieve the DialogResult if you want it...
DialogResult result = form.DialogResult;
//do something
}
に登録しますフォームからのFormCloseまたはFormClosingイベント – Zenwalker
どういう意味ですか? – user962206
System.Windows.Formsクラスは、いくつかのイベントに影響を与えます。そのMSDNを行ってください。あなたはフォームを閉じるイベントを取得する方法についていくつかのアイデアを得る – Zenwalker