C1Sizerコンポーネントについて
C1Sizerコンポーネントは、強力なグリッドレイアウトマネージャを持つコンテナコントロールです。C1Sizerをフォームに配置すると、コントロールの組み込みが可能なグリッドを作成することができます。
また、ユーザーが境界線をドラッグしてリサイズし、表示領域を自由に変更できるようなフォームデザインを簡単に実現できます。プログラム実行時に行列をユーザーが追加・削除できるようにすることも可能です。
各種設定を行える「グリッドエディタ」が搭載されており、行列それぞれ次のようなコマンドを使って編集することが可能です。
コマンド | 説明 |
---|---|
挿入 | 新しいバンド(※注)をコレクション内の指定された位置に挿入します。 |
追加 | 新しいバンドをコレクションに追加します。 |
削除 | 選択されたバンドを削除します。 |
均等 | すべてのバンドを同じサイズに設定します。 |
クリア | すべてのバンドをクリアします。 |
自動 | 子コントロールに基づいてバンドを作成します。 |
OK | 変更を更新してC1Sizerグリッドエディタを閉じます。 |
C1Sizerコンポーネントでは、グリッドの行や列を「バンド」と呼びます。
![グリッドエディタ](http://cz-cdn.shoeisha.jp/static/images/article/5106/Image5.jpg)
![フォームをグリッド状に分割してレイアウトできる](http://cz-cdn.shoeisha.jp/static/images/article/5106/Image6.jpg)
グリッドの設定プロパティ
次のプロパティを使ってグリッドのマス目を設定できます。
プロパティ | 説明 |
---|---|
IsFixedSize | コントロールをリサイズするとき、バンドのサイズを固定するかどうかを指定します。デフォルトの値は、Falseです。 |
IsSplitter | バンドがスプリッタのように動作するかどうか(実行時にマウスでリサイズできるかどうか)を指定します。デフォルトの値は、Falseです。 |
Size | 行の高さ、または列の幅をピクセル単位で取得または設定します。 |
C1Sizerコンポーネントをフォームに配置し、Dockプロパティでフォームと一体化させると、フォームのサイズ変更に追従してC1Sizerコンポーネントのグリッドも自動的にサイズが変わります。IsFixedSizeプロパティを使えば、フォームのサイズを変えても、特定のバンドのサイズは同じ状態を保持するように設定できます。このプロパティは、グリッドのマス目1つ1つに設定することが可能です。
![IsFixedSizeプロパティを使えば、フォームの全体のサイズを変更しても特定のバンドだけ同じサイズのままといった設定が可能](http://cz-cdn.shoeisha.jp/static/images/article/5106/Image7.jpg)
IsSplitterは、グリッドの境界線をプログラム実行時にユーザーが操作できるように設定するプロパティです。このプロパティも、グリッドのマス目1つ1つに設定できます。
さらに、C1Sizerコントロールは、配置した他のコントロールのサイズをグリッドと連動して変更させる機能を持っています。グリッドのマス目にコントロールを配置すると、そのコントロールはマス目と同サイズとして配置され(DockプロパティのFillと同じ状態)、グリッドのサイズを変更した場合、連動してコントロールのサイズも変化するようになります。これは、境界線を移動させても同じ動作をします。
プログラム実行時に、グリッドがあることを見せたくない場合は、C1SizerコンポーネントのBorderプロパティを「0」にすると境界線が非表示になります。
また、AutoSizeModeを「None」にすると、マス目に配置したコントロールのサイズを自由に設定できるようになり、レイアウトの自由度が上がります。
![レイアウト例と実行画面](http://cz-cdn.shoeisha.jp/static/images/article/5106/Image7A.jpg)
![境界線を非表示にすることも可能](http://cz-cdn.shoeisha.jp/static/images/article/5106/Image7B.jpg)