TableLayoutPanel コントロールの推奨される手順
更新 : 2007 年 11 月
TableLayoutPanel コントロールが提供する強力なレイアウト機能については、Windows フォームで使用する前に慎重に検討する必要があります。
推奨
以下の推奨事項は、TableLayoutPanel コントロールを有効に利用する上で役立ちます。
対象となるレイアウト
TableLayoutPanel コントロールを使用する場合は注意が必要です。サイズ変更が可能なレイアウトが必要であってもすべての状況で使用できるわけではありません。次のようなレイアウトでは、TableLayoutPanel コントロールの使用が最も適しています。
フォームが複数の部分から成り、それぞれを比例的にサイズ変更する必要があるレイアウト。
実行時に動的に変更または生成されるレイアウト (たとえば、ユーザーによるカスタマイズが可能なフィールドが、設定に基づいて追加または削除されるデータ入力フォームなど)。
全体のサイズを固定しておく必要があるレイアウト。たとえば、ダイアログ ボックスのサイズを 800 × 600 以下に維持しながら、ローカライズされた文字列をサポートする必要がある場合などです。
次のようなレイアウトでは、TableLayoutPanel コントロールを使用してもあまり有効ではありません。
ラベルとテキスト入力領域の列をそれぞれ 1 つずつ持つ単純なデータ入力フォーム。
サイズ変更の際に、使用できる領域全体を満たす必要がある 1 つの大きな表示領域を持つフォーム。この例としては、単一の PropertyGrid コントロールを表示するフォームがあります。この場合、フォームのサイズを変更したときに他の要素を拡張する必要がないため、固定を適用します。
TableLayoutPanel コントロールに必要なコントロールを慎重に選択します。アンカーを使用してテキストを 30% まで拡張する余裕がある場合、Anchor プロパティのみを使用することを検討してください。レイアウトに必要な領域を推定できる場合、Dock と Anchor を使用する方法は、残りの領域と AutoSize 動作の詳細を推定するよりも簡単です。
一般に、TableLayoutPanel を使用してレイアウトをデザインする場合、デザインはできるだけ単純にします。
[ドキュメント アウトライン] ウィンドウの使用
[ドキュメント アウトライン] ウィンドウには、レイアウトがツリー ビューに表示されます。コントロールの Z オーダーと親子関係を操作するときに使用できます。[表示] メニューの [その他のウィンドウ] をポイントし、[ドキュメント アウトライン] をクリックします。
入れ子を避ける
TableLayoutPanel コントロールに他の TableLayoutPanel コントロールを入れ子にするのは避けてください。入れ子になったレイアウトのデバッグは困難な場合があります。
ビジュアル継承を避ける
TableLayoutPanel コントロールは、Windows フォーム デザイナのビジュアル継承をサポートしていません。派生クラスの TableLayoutPanel コントロールは、デザイン時には "ロックされた" 状態で表示されます。