0

我正在尝试找出哪些表单阻止了父模式。

我的环境有点复杂。我有一个 AppToolBar(如任务栏),它是应用程序的主要形式。因此,我自己的工具栏打开的所有表单都是

ShowInTaskbar = False

因为有显示在我自己的工具栏中。此外,应用程序直接(通过 AppToolBar)打开的所有表单都存储在列表中。假设我有 Form1、Form2 和 Form3。Form1和Form2由AppToolBar直接打开,Form3由Form1创建然后显示

Form3.ShowDialog(Form1)

在某些时候,用户最小化我的整个应用程序,然后调用

Form1.Hide
Form2.Hide

我无法将 Form1 的状态设置为最小化,因为它不会显示在任务栏中,因为它会在任务栏上方显示为最小化窗口。现在 Form1 应该调用 Form3.Hide。那么我怎样才能发现,从 Form1 的角度来看,Form3 阻止了 Form1?

干杯。

4

1 回答 1

0

只是为了让这个问题被标记为已回答并且汉斯没有发布他的解决方案,我会的。

您将通过调用获得所有打开的表格

Application.OpenForms

这将使您返回所有表格。要找出哪些表单阻止了 Form1,您只需在所有打开的表单中搜索所有者属性并返回所有者为 Form1的那些表单。

于 2012-08-18T09:15:41.300 回答