Windows表单控件的自动调整大小

30

我正在使用VS2008的设计器来实现这个。

例如,如果我有一个大小为500x500的窗体,并在其中添加了一个DataGridView(490x490)。

当我运行这个程序并最大化窗体时,DataGridView仍然保持原来的大小。窗体上的其余空间是空白的。我希望DataGridView也能够占据整个窗口大小。

没有软件会像这样。我不知道应该改变什么才能得到期望的行为。

5个回答

51

您可以使用 Dock 属性,或者更精确地控制,请使用 Anchor 属性。通过将 Anchor 设置为 Left、Right、Top、Bottom,控件将随窗口缩放。通过将 Anchor 设置为 Right,控件将随右边界移动。通过将 Anchor 设置为 Top 和 Bottom,控件将在垂直方向上缩放,但宽度固定。只需尝试一下。


当我想将控件调整为特定值时,例如在调整窗体大小时,Control.Size *= 2。 - DhavalR

19

您可以将 DataGridView 实例的 Dock 属性设置为 DockStyle.Fill,或者使用 Anchor 属性并将锚点设置为:

dataGridView.Anchor = 
    AnchorStyles.Bottom | 
    AnchorStyles.Right | 
    AnchorStyles.Top | 
    AnchorStyles.Left;
第一种方法将使您的DataGridView填充整个客户端区域。第二种方法会保持比例,并且仅在容器调整大小时调整控件的大小。

8

要在WinForm中填充停靠区,请使用以下代码:

dataGridView.Dock = DockStyle.Fill;

6
DataGridViewDock 属性设置为 Fill。

2
如果您需要像文本框、图片框等自动缩放的其他内容,则可以转到它们相关的锚定属性,并根据您的要求进行设置。请注意保留HTML标记。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接