C# 模态形式在关闭时不消失
我有一个情态动词,比如form1。有一个按钮,当用户单击它时,另一个模态表单显示为formchild。如果有任何错误,我想取消formchild并显示一个messagebox。 我使用以下代码。然而,我看到的是一个messagebox显示在formchild的顶部。C# 模态形式在关闭时不消失,c#,winforms,modal-dialog,messagebox,C#,Winforms,Modal Dialog,Messagebox,我有一个情态动词,比如form1。有一个按钮,当用户单击它时,另一个模态表单显示为formchild。如果有任何错误,我想取消formchild并显示一个messagebox。 我使用以下代码。然而,我看到的是一个messagebox显示在formchild的顶部。 如何使formchild消失/关闭?谢谢 formchild.DialogResult = DialogResult.Cancel; formchild.Close(); Messag
如何使formchild消失/关闭?谢谢
formchild.DialogResult = DialogResult.Cancel;
formchild.Close();
MessageBox.Show(error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop);
为什么不在给formchild打电话之前先说“如果”呢
//some codes here:
if (!Error)
formchild.ShowDialog();
else
Messagebox.Show("Error has occured.");
或者,如果不可能,请尝试将if语句放入formchild.Load中
private void formchild_Load(object sender, EventArgs e)
{
//some codes here:
if (Error)
{
Messagebox.Show("Error has occured.");
this.Close();
}
}
对于formchild,解决方案设置为可见为false。谢谢
formchild.Visible = false;
formchild.Close();
MessageBox.Show(error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Stop);
谢谢在异步完成web服务调用时显示formchild。formchild将一直显示,直到web服务调用完成。若web服务调用返回错误,那个么我需要消除formchild和displayerror。如果不是,我干脆辞退formchild,做些别的事情。这就是为什么我不能在formchild_load或在showDialog之前完成它。谢谢我似乎不理解你的处境。。运行web服务调用时是否显示formchild?然后,它将在web服务调用完成后再次显示?它在web服务运行时显示,在web服务完成时关闭。