💻
【C#】非表示にしたコントロールの空間を詰めるシンプルな方法
概要
フォームアプリで、ボタンなどのコントロールを非表示(Visible = false)にした時、コントロールの存在していた場所に空間ができてしまいます。この空間を詰める方法を紹介します!
| 状態 | 実行結果 | 備考 |
|---|---|---|
| 通常 | ![]() |
|
| 非表示 | ![]() |
button2を非表示 |
| 非表示&詰める | ![]() |
button2を非表示 非表示分の空間を詰める |
動作環境
.Net 8.0
.Visual Studio 2022
方法
デザイナーでボタンをflowLayoutPanelの上に設置するだけで、実現できます。
(とてもシンプルです!)
flowLayoutPanelは、ツールボックスのコンテナーの中になります。

サンプル
button2のVisible = falseとするとbutton3が左側に詰まります。

詰める方向
flowLayoutPanelのFlowDirectionプロパティを変更することで詰める方向を変更することができます。(デフォルトは左詰め(LeftToRight))
| FlowDirection | サンプル |
|---|---|
| LeftToRight | ![]() |
| TopDown | ![]() |
| RightToLeft | ![]() |
| BottomUp | ![]() |







Discussion