如何在MdiContainer的子级中允许ShowDialog?

时间:2019-04-17 05:49:10

标签: c# winforms mdi

我的表格是this.IsMdiContainer = true。我在其中显示了一个子窗体。

 FrmCustomer frm=new FrmCustomer();
 frm.MdiParent = this;
 frm.Show();

我想在FrmCustomer中显示一个对话框。我使用此代码,

  FrmCustomerDetail frm=new FrmCustomerDetail(null);
  frm.MdiParent = this.MdiParent;
  frm.ShowDialog();

但是我得到了错误,

  

不是顶级表单的表单不能显示为模式   对话框。在调用之前从任何父表单中删除该表单   showDialog。”

1 个答案:

答案 0 :(得分:1)

一种方法是离开MdiOwner并使用ShowDialog方法参数设置Window Owner。

   FrmCustomerDetail frm=new FrmCustomerDetail(null);
   frm.ShowDialog(this);