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ます。このプロパティの使用は避けたほうがよいでしょう。より良い解決策があります。.NetCoreWinFormsバージョンで修正されることを願っています。

于 2019-09-28T08:17:38.557 に答える
2

ショートカットの場合:

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