从模态窗体显示非模态窗体关闭模态窗体
我有显示的模态窗体。 例如从模态窗体显示非模态窗体关闭模态窗体
var form = new MyModalForm();
form.ShowDialog();
在MyModalForm中,我有一个启动另一个窗体的按钮。这一个是非模态的。
当我点击按钮时,HelperForm出现,但MyModalForm消失。怎么回事,我该如何纠正?我希望模态形式保持不变,助手非模式形式可以访问。
我试图设置帮助者窗体的所有者属性是模态窗体,但是这两个窗体都没有显示。
这两个表单都是非模态的。 试试这个:
using (var form = new.MyModalForm())
{
form.ShowDialog(); // make this form modal
}
在MyModalForm,我有一个按钮,启动另一种形式。这一个是非模态的。
var helperForm = new MyHelperForm();
helperForm.Show(this); // this should be an instance of MyModalForm
是的。在我的原始文章中有一个错字,显示MyModalForm是用Show()而不是ShowDialog()调用的。 helperForm.Show(this);在这里是关键。很好。 –
instead of helperForm.show() call helperForm.showDialog()
the helper form will appear and your modelForm will remain on screen.
我不知道谁给了你一个赞成票,但* showDialog *显示一个**模态**表单! *在MyModalForm中,我有一个启动另一个表单的按钮。这是* **非模态。** –
是的,如果可能的话,我的HelperForm目标是它是非模态的。 –
我不知道* showForm *方法,但显示您使用* showDialog *的模态形式。你的** helperForm **没问题。 –
'showForm'做什么?这不是Form类的标准方法。 –
对不起,showForm()只是为了show()。 –