将 MDI 表单置于前端时遇到问题

问题描述 投票:0回答:2

假设我的父窗体中有两个 MDI 窗体。

每个表单内部都有很多控件,有些甚至是自定义 Infragistics 控件,例如 UltraPanel。

当前,当两个表单都打开并处于正常大小模式(不是最大化或最小化)时,我只能通过单击表单标题栏将一个表单置于另一个表单的前面。

如果我在表单本身内部单击,它不会被带到前面。有什么方法可以让我捕获 MDI 表单中anywhere的点击并将其带到前面吗?

c# winforms mdi
2个回答
0
投票

向子表单添加 DoubleClick 事件并设置:

this.WindowState = FormWindowState.Maximized;

0
投票

@这里只有玻利维亚人, 你发现错误了吗? 现在我们有了一个功能齐全的应用程序,可以正常工作几年,mdiConroler 没有任何问题。 我刚刚添加了删除/设置 mdiParent 到表单的功能。 它有效,可以删除表单并将其添加到 mdiParent 中。
但是,我们有完全相同的错误。 一旦我们将表单放入 mdi 父级中,错误就会出现。

这两种情况都会导致该错误:

  • 如果我们有一个位于 mdiClient 中的表单,我们将其删除,然后将其添加回来,就会发生错误。
  • 在 mdiClient 外部创建然后添加的表单也会发生这种情况。

当错误发生时,一个解决方法是关闭所有 mdiChild,然后正常行为再次开始工作。

© www.soinside.com 2019 - 2024. All rights reserved.