0

我有两列:

C1 和 C2。

C1 有一个 250px 的固定值,C2 应该自动调整自己的大小。C2 包含网格视图。因此,如果大小更改为 1200px,gridview 应该自动占用 950px。

凭借 Grid 控件,在 WPF 中这很容易,但我如何在 Winforms 中做到这一点?

4

3 回答 3

2

执行以下操作:

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

完毕。

作为替代方案,您可以使用TableLayoutPanel控件(它的工作方式或多或少类似于 WPF 对应项)。看看这篇关于 SO 的帖子以获取更多详细信息。

于 2012-04-17T11:50:52.707 回答
1

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

如果出于某种原因您喜欢手动执行此操作,那么您将需要处理表单调整大小事件并在其中更改 gridview 的大小和位置。

于 2012-04-17T11:49:49.760 回答
0

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

于 2012-04-17T11:51:26.447 回答