如何更改表单大小时如何自动调整控件大小?

时间:2012-04-17 11:43:44

标签: c# winforms gridview uiview

我有两列:

C1和C2。

C1固定为250px,C2应自动调整大小。 C2包含gridview。因此,如果大小更改为1200px,gridview应自动占用950px。

凭借网格控制在WPF中非常容易,但我如何在Winforms中做到这一点?

3 个答案:

答案 0 :(得分:2)

请执行以下操作:

  • 将C1放入表单中。
  • 将其宽度设置为250像素。
  • 将其Dock属性设置为Left(或Right,由您决定。)
  • 将C2放入表单中。
  • 将其Dock属性设置为Fill
  • 将您的GridView放入C1。
  • 将其Dock属性设置为Fill

完成。

作为替代方案,您可以使用TableLayoutPanel控件(它或多或少与WPF对应项一样)。请查看this post here on SO了解更多详情。

答案 1 :(得分:1)

通常最好让控件使用Anchor或Dock属性调整自身大小。

如果出于任何原因您想手动执行此操作,则需要处理表单调整大小事件 并在其中改变gridview的大小和位置。

答案 2 :(得分:0)

在设计器中将C1.Width设置为250并将C1.Dock设置为Left。然后将C2.Dock设置为Fill。