如何在全屏模式下以窗体形式拉伸内部面板?

时间:2012-07-30 05:14:50

标签: .net winforms fullscreen formpanel

我有一个全屏运行的Windows应用程序,我的表单中有一些面板,我希望它们在宽度上伸展,我的意思是我可以如何为这些面板添加width = 100%?

如下图所示,右侧面板是我应该伸展的内部面板(容器面板),它包含许多项目:2个面板,工具条和网格。我只是将Doc =“Fill”和Anchor =“top; right; left; bottom”设置为它,但没有任何改变。

enter image description here

3 个答案:

答案 0 :(得分:10)

要使面板拉伸到整个窗体,请更改面板控件的Anchor属性,并将其设置为所有四个。调整控件的大小以拉伸到整个表单。

panel1.Anchor = AnchorStyles.Top | AnchorStyles.Right | AnchorStyles.Bottom | AnchorStyles.Left;

其次是制作全屏表格:

this.WindowState = FormWindowState.Maximized;
this.FormBorderStyle = FormBorderStyle.None;

答案 1 :(得分:3)

在Windows窗体中,有两种方法可以使用以下格式设置控件大小:DockAnchor属性:

enter image description here enter image description here

Docking为您提供了一种在窗体边缘和中心控件上进行控制的方法。 Anchor允许您声明控件应始终与给定边集的距离相同。如果同时启用左边缘和右边缘,则随着窗体调整大小,它将在宽度上调整大小。

答案 2 :(得分:0)

锚点让我很头疼。在 WinForms 中,我更喜欢使用 TableLayoutPanel 进行流畅的布局。

只需将 TableLayoutPanel 的 Dock 设置为 Fill,您就可以使用绝对或相对大小指定行和列。然后只需将控件添加到表格的正确单元格并将其 Dock 设置为 Fill。

来自 WPF,这类似于使用网格并指定行和列定义。您也可以将 TableLayoutPanel 放在其他 TableLayoutPanel 中。