我需要从 MdiChild (frmB) 表单打开模态表单 (frmD) 而不会阻塞主表单 (frmA) 和所有其他人打开 MdiChild 表单 (frmC)。然后我切换到frmC,frmD被隐藏了。
这是类似的问题,但不适用于 Mdi 应用程序。
有没有办法打开一个模态对话框,只让它阻止打开它的 mdi 子窗体?
本文描述了一种可能的策略,它依赖于使用该.Show()
方法而不是在调用该方法之前.ShowDialog()
打开模式对话框并将 MdiChild 的属性设置为 false 。Enabled
.Show()
然后,您需要Enabled
在对话框关闭时将 MdiChild 的属性设置回 true,这意味着您需要在 MdiChild 表单中创建一个事件处理程序来处理FormClosing
对话框的事件。