我有一个奇怪行为的对话框 - 我必须按两次取消按钮(第一次返回 DialogResult.None,我只是找不到这种行为的原因)
1.打开对话框的代码
using (var dlgProcess = new DlgFormProcessMismatches())
{
if (dlgProcess.ShowDialog(this) == DialogResult.OK)
{
// do stuff
}
else if (dlgProcess.ShowDialog(this) == DialogResult.Cancel)
{
MessageBox.Show(@"Process was cancelled...");
}
}
2.在 dialogForm 我有:
1)设置“取消”按钮的属性DialogResult=Cancel
2)在取消按钮单击事件上,我明确设置了DialogResult(我尝试过使用和不使用这个,因为只需设置按钮的Dialogresult = Cancel就足够了)
this.DialogResult=DialogResult.Cancel
但问题是,在我第一次按下取消按钮时,它返回 DialogResult.None,所以它再次显示 dialogForm,然后当我再次按下取消按钮时返回 DialogResult.Cancel
可能是什么问题呢?有任何想法吗?