最大化时MDI父级中的面板与子级重叠
本文关键字:重叠 MDI 最大化 | 更新日期: 2023-09-27 18:20:22
我正在使用VS2010和C#4.0编写一个windows应用程序。我有一个MDI父窗体,我需要在它的底部有一个"设置面板"。为此,我使用了一个无边框窗体。但现在,当应用程序运行时,当我最大化子窗体时,它会与设置面板重叠。我该如何避免这种情况?我的设置面板应该始终可见,并且永远不会与其他任何东西重叠。
不要为此使用Form
。您应该使用一个简单的Panel
。遵循以下简单步骤:
- 将主窗体的
IsMdiContainer
设置为false
- 将
Panel
添加到主Form
,并将其固定到底部(或您喜欢的任何选项,左、右等)。此面板将是您的设置面板 - 将主窗体的
IsMdiContainer
设置回true
- 将所有相关控件添加到始终可见的设置面板中
步骤3和4可以按任何顺序执行。
首先将IsMdiContainer
设置为false
的原因是为了确保您可以将Panel
停靠在Form
的客户端空间内,而不是停靠到MdiContainer
控件的客户端空间(当您将IsMdiContainer
设置为CCD15时,设计器会自动添加CCD_11,同时将其停靠设置为Fill
)。如果您将其停靠在MdiContainer
内,则Panel
将被您要打开的任何MdiChild隐藏。请注意,您不能直接与设计器中的MdiContainer
控件交互。