我已使用以下方法覆盖此表单上的默认ShowDialog()
方法:
public DialogResult ShowDialog(int itemToEdit)
{
this._itemToEdit = itemToEdit;
FillForm(Program.AppConfig.Tweets[itemToEdit]);
return this.ShowDialog();
}
表单有一个“确定”和一个“取消”按钮,其点击处理程序如下所示:
private void cancelButton_Click(object sender, EventArgs e)
{
this.DialogResult = DialogResult.Cancel;
}
但是,我有另一个按钮,不设置表单的DialogResult
属性,但点击它时,它以某种方式设置,表单隐藏,返回{{1 }}。我不希望这种情况发生。
编辑:实际上,表单中的每个按钮都会返回DialogResult.Cancel
,无论它是否有DialogResult.Cancel
处理程序。
答案 0 :(得分:4)
检查该按钮的DialogResult
属性。它应该是None
。并确保按钮Click事件未设置为cancelButton_Click
答案 1 :(得分:2)
检查表单的CancelButton - 属性。对于分配给此属性的按钮,将自动设置DialogResult(类似于AcceptButton属性)。
另请检查其他按钮的DialogResult属性。它可能被设置为DialogResult.Cancel,然后关闭表单并返回您观察到的DialogResult。