28

给定一个具有 2 列和多行的表格布局面板,我如何将滚动条附加到它,因为有时它的大小会比表单的大小大得多。

谢谢

4

3 回答 3

56

TableLayoutPanel是一个例子ScrollableControl。因此,您可以将它的AutoScroll属性设置为 True,当它的首选大小超过其当前大小时,控件将自动创建滚动条。这将以最少的麻烦为您提供所需的效果。

程序

  1. 将该MaximumSize属性设置为首选的最大大小,或者您可以将 TableLayoutPanel 停靠在表单中。
  2. AutoScrollTableLayoutPanel 的属性设置为 true。



仅供参考:
Panel、ToolStrip、FlowLayoutPanel、SplitterPanel、TableLayoutPanel、TabPage 和 ToolStripContentPanel 都继承了ScrollableControl该类,因此此答案也适用于它们。

于 2011-01-25T14:06:19.647 回答
4

.Net Framework WinFormsTableLayoutPanel有很多AutoScroll. 最好避免使用此属性。有更好的解决方案。我希望它们将在.Net Core WinForms版本中得到修复。

于 2019-09-28T08:17:38.557 回答
2

对于快捷方式:

tableLayoutPanel1.MaximumSize = new Size(tableLayoutPanel1.Width, tableLayoutPanel1.Height);
tableLayoutPanel1.AutoScroll = true;
于 2017-03-31T05:25:45.140 回答