我创建了一个表单作为对话框,表单只有一个文本框,一个OK按钮和一个Cancel按钮。不知何故,当以下不起作用,除非我改变rnmForm.DialogResult!= DialogResult.OK),为什么会这样?
frmRename rnmForm = new frmRename();
rnmForm.ShowDialog(new Form());
if (rnmForm.DialogResult==DialogResult.OK)
{
MessageBox.Show("test");
}
答案 0 :(得分:1)
在确定单击事件中关闭对话框之前,您是否确保将对话框结果设置为OK?
this.DialogResult = DialogResult.OK;
this.Close();
或者在Ok按钮上设置属性,类似于:
btnOk.DialogResult = DialogResult.OK;
我还要问你为什么要调用showDialog并指定一个新的表单实例作为所有者,而不是只调用没有参数。只是不确定那是故意的。
rnmForm.ShowDialog();