在winforms应用程序中是否有一种简单的方法可以访问打开的表单集合,哪些表单位于顶部,打开它们的顺序等等?
我想把它变成一个静态类,所以我可以在代码中的任何地方调用它,而不必传递对象。
否则,我必须自己创建“窗口管理器”。
答案 0 :(得分:1)
您可以使用 Application.OpenForms
property 获取包含应用程序中当前打开的所有表单的集合。这确实是一个静态属性,所以它可以在任何地方使用。
但是,我不确定这符合您指示表单打开顺序的要求。您将不得不自己跟踪这些信息。
请注意,OpenForms
返回的集合也不会跟踪每个表单打开的线程。如果您想访问表单成员,请先检查其InvokeRequired
property,以防止收到InvalidOperationException
例外。