在mdi中显示对话

时间:2013-02-24 19:46:49

标签: c# mdi showdialog mdichild

我需要以mdi格式打开Showdialog()因为我需要停止代码直到mdichild完成。

程序的结构是这样的,我在onCreate中打开一个mdichild而不是类而在构造函数中我打开de SearchForm

有代码:

   frm_bsq_persona busqueda_persona = new frm_bsq_persona();
   busqueda_persona.MdiParent = this.MdiParent.MdiParent;
   busqueda_persona.Show();     

非常感谢。

1 个答案:

答案 0 :(得分:0)

MDI child as dialog form(MDI模态解决方法)
http://www.codeproject.com/Articles/48436/MDI-child-as-dialog-form-MDI-modal-workaround

它的工作原理是禁用父窗体上的所有控件,并为您提供EventReceiver方法以从对话框接收DialogResult。

有一些警告。父表单的状态未完全保留,因为所有控件都在返回时重新启用。如果需要,您必须在创建对话框之前保存父表单的状态(或者可能只是那些已经禁用的控件),并在调用事件接收器时恢复状态。