我目前正致力于为 WinForms 控件创建布局:
我的用户控件托管以下子控件:
RichTextBox
Label B
Control B
Control B
Control B
Label C
Control C
Control C
Label D
Control D
Control D
RichTextBox 始终可见。它的高度应该增长到需要显示所有文本而无需滚动条的高度。
根据我的数据对象,我想显示一些附加信息(如果存在)。例如,可以有 5 个控件 B、0 个 C 和 20 个 D。
我希望控件“ float ”到顶部。每个控件都应该能够增加高度,以便显示其完整内容。
我尝试了 TableLayoutPanels、FlowLayoutPanels、停靠和自动调整大小设置的多种组合,但没有一个能满足我的期望。
如何使用停靠顶部和自动调整大小功能按照上面发布的顺序排列控件?
最佳答案
- 创建 4 行 1 列的外部 TableLayoutPanel。为行设置
SizeType = AutoSize
。 - 将 RichTextBox 放入第一行。
- 创建内部 TableLayoutPanel,其中包含与控件数量相同的行数和 2 列。为所有行设置
SizeType = AutoSize
。为内部 TableLayoutPanel 设置AutoSize = true
。将其放在下一行。 - 将标签放置到第一个单元格。为标签设置
ColumnSpan = 2
。 - 将控件放置到其他行的第二列中。
- 对其他内部
B
和C
重复 3-5
关于c# - 如何创建具有顶部 float 控件和自动调整大小的布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11617611/