无法取消隐藏所有子窗体? vb.net

Cant unhide all child forms? vb.net

我遇到了流动性问题。我有一个 vb.net 父表单,其中包含包含敏感信息的 MDI 子表单。我做了一个暂停按钮,它应该隐藏所有子表单,这没问题,把它们叫回来就是了。我出于测试目的创建了一个按钮,该按钮应该执行相反的操作,但是我所有的子表单都保持隐藏状态,有人可以帮忙吗?

隐藏所有子窗体的代码如下:

For Each frmApproval As Form In Me.MdiChildren
        frmApproval.Visible = False

    Next
    System_Paused.MdiParent = Me
    System_Paused.Show()

现在名为 System_Paused 的表单上有一个按钮,单击该按钮应该会恢复隐藏的子表单,但它不起作用?

        For Each frmApproval As Form In Me.MdiChildren
        frmApproval.Visible= true
    Next
    Me.Close()

您正在迭代错误的 MdiChildren 集合。

您隐藏了主窗体的子项,然后尝试设置 System_Paused 窗体的子项的可见性。

您可以使用如下方式解决此问题:

For Each frmApproval As Form In Me.MdiParent.MdiChildren
    frmApproval.Visible = true
Next

因为您已经将主表单设置为 System_Paused 表单的 MdiParent