是否可以使用MdiChildForm中的ShowDialog而不阻塞所有其他MdiChildForms和MdiParent?

时间:2011-01-18 09:27:46

标签: c# winforms mdichild showdialog mdiparent

我需要从MdiChild(frmB)表单打开模态表单(frmD)而不阻塞主表单(frmA),所有其他表单打开MdiChild表单(frmC)。然后我切换到frmC,隐藏了frmD。

This is类似的问题,但不适用于Mdi申请。

有没有办法打开一个模态对话框,只让它阻止打开它的mdi子窗体?

1 个答案:

答案 0 :(得分:0)

this article中描述了一种可能的策略,该策略依赖于使用.Show()方法而不是.ShowDialog()来打开模式对话框并将MdiChild的Enabled属性设置为false就在你调用.Show()方法之前。

然后,当对话框关闭时,您需要将MdiChild的Enabled属性设置为true,这意味着您需要在MdiChild表单中创建一个事件处理程序来处理FormClosing对话的事件。