2列で多くの行があるテーブルレイアウトパネルがある場合、フォームのサイズよりもはるかに大きくなることがあるので、スクロールバーをそれにアタッチするにはどうすればよいですか。
ありがとうございました
2列で多くの行があるテーブルレイアウトパネルがある場合、フォームのサイズよりもはるかに大きくなることがあるので、スクロールバーをそれにアタッチするにはどうすればよいですか。
ありがとうございました
はのTableLayoutPanel
例ですScrollableControl
。したがって、そのAutoScroll
プロパティをTrueに設定すると、優先サイズが現在のサイズを超えると、コントロールが自動的にスクロールバーを作成します。これにより、最小限の手間で目的の効果が得られます。
手順
MaximumSize
か、フォームにTableLayoutPanelをドッキングできます。 AutoScroll
TableLayoutPanelのプロパティをtrueに設定します。
参考:
Panel、ToolStrip、FlowLayoutPanel、SplitterPanel、TableLayoutPanel、TabPage、ToolStripContentPanelはすべてScrollableControl
クラスを継承するため、この回答はそれらにも適用されます。
.Net Framework WinFormsTableLayoutPanel
には、。に関する多くのバグがありAutoScroll
ます。このプロパティの使用は避けたほうがよいでしょう。より良い解決策があります。.NetCoreWinFormsバージョンで修正されることを願っています。
ショートカットの場合:
tableLayoutPanel1.MaximumSize = new Size(tableLayoutPanel1.Width, tableLayoutPanel1.Height);
tableLayoutPanel1.AutoScroll = true;