【问题标题】:How to achieve a WinForm with one fixed size and one variable column? [closed]如何实现一个固定大小和一个可变列的WinForm? [关闭]
【发布时间】:2014-11-29 10:10:48
【问题描述】:

我正在尝试使用TableLayout 控件进行此操作,并将一列固定为 200,另一列固定为 AutoSize。然而,除非我在 autosize 列中放置任何内容,否则它会缩小到什么都没有,而另一个所谓的固定宽度列会在整个表单中展开。

我真的必须在每次调整表单大小时手动调整两个血腥面板的大小来实现这一点吗?我以为我们生活在现代。

【问题讨论】:

  • “现代”看起来更像 WPF ;) 无论如何,如果我们能看到您的代码当前的样子,回答您的问题会更容易。
  • 你确定你放了 200 像素而不是 200%?
  • 是的,我放了 200px。 @PatriceGahide,WPF + VB.NET 是魔鬼。我还没有代码,我仍在尝试让布局控件在页面上工作。那不需要代码,否则我就写我自己的血腥控制

标签: c# vb.net winforms tablelayout tablelayoutpanel


【解决方案1】:

根据Autosize behaviour,您应该使用 Percent 而不是 Autosize :

为所有 Absolute 和 AutoSize 列或行分配空间后,任何 SizeType 设置为 Percent 的列或行都将用于按比例分配剩余的可用空间

Autosize 会匹配它能找到的最宽的子元素,所以当没有找到子元素时,选择的列宽为 0 是合乎逻辑的。 FI,当大小设置为“自动”时,这种行为在 WPF 中是相同的。

【讨论】:

    【解决方案2】:

    将另一列(AutoSize)设为 100%。

    【讨论】:

    • 完美有意义,谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    • 2011-07-09
    • 1970-01-01
    相关资源
    最近更新 更多