面板内的子控件不会在窗体调整大小时调整大小

时间:2013-03-01 05:14:22

标签: c# winforms

我想在MDI表单上显示横幅图像以及一些菜单。菜单应显示在右侧底部位置的横幅图像上。为实现这一目标,我按照以下步骤进行了操作:

  1. 添加了MDI表单
  2. 面板(pnlHeader) - 背景颜色为黑色以匹配图像背景
  3. Picturebox显示横幅图片并将其添加到pnlHeader
  4. 在Picturebox中添加了menustrip(dock = none),希望在横幅图片上显示菜单(徽标旁边)
  5. 当我调整表单大小时,图片框图像和menustrip不会调整大小,即使Panel是Dock to Top。对此有什么建议吗?由于安全原因,我无法为您提供代码。

1 个答案:

答案 0 :(得分:0)

基本上将新面板添加到当前布局中。 你最终会得到这个:

layout

这里正在进行正确的锚定,因此这个设置应该有效:

- PictureboxAnchor:Top, Left, Right。只需根据您的需要调整大小。

- pnlHeaderAnchor Top, Left, Right。只需根据您的需要调整大小。

- pnlMenuContainer(橙色):Anchor Top, Left, Right.它应该与包含的MenuBar具有相同的高度,因为它仅用于放置菜单栏。

- MenuStrip(img中的MenuBar):Dock Top(或底部)。

使用此布局PictureBox和MenuStrip会增加它们的大小,因为您可以使表单更宽。实际上对于MenuStrip,包含它的面板是增加它的尺寸但是当你的menuStrip停靠时,它也变大了。相反(使其变小)。

我必须提前为任何语法或拼写错误道歉。

祝你好运,