我有app同时打开几个窗口。一个窗口(我们称之为MainWindow
)是应用程序的主窗口。在该窗口中,我使用Show()
方法打开其他几个窗口,并将这些子窗口的Owner
属性设置为MainWindow
。根据{{3}} MSDN文章,如果所有者设置在那种窗口上,主窗口将始终位于子窗口后面
所有者窗口永远不能覆盖拥有的窗口。
问题是:是否存在允许我保留父子关系的场景(我需要这个,因为我需要能够遍历子窗口)并且在主窗口的所有其他窗口之前应用程序一直在吗?一个关键注意事项:必须使用Show()
而不是ShowDialog()
方法打开窗口。
我使用Topmost
和Activate()
方法尝试了Focus()
属性,但还没有找到方法。
答案 0 :(得分:0)
创建父/子关系并能够将父窗口置于最前面的最简单方法是创建一个cusom表单类,为它提供一个属性,您可以使用它来迭代它们然后继承您自定义表单类中的所有表单。
然后Activate()
或Focus()
应该有效。