- PR -

CheckedListBoxの行間サイズを指定したい

1
投稿者投稿内容
さくら
ベテラン
会議室デビュー日: 2004/02/12
投稿数: 76
投稿日時: 2008-02-26 10:33
OS:Windows XP Pro(SP2)
開発ソフト:Visual Studio 2005
開発アプリ:Windowsアプリ(開発言語:VB)

CheckedListBoxに5つの選択肢を入れ、
その1行、1行の間隔を広げたいのですが、
やり方をご存知の方がおられましたら教えてください。

デフォルトの設定のままだと、
5つの選択肢(5行)の行間が狭く、
びっちり詰まった感じで縦に並んで
表示されてしまうので、
出来れば、それを1行置きぐらいの間隔で、
表示できたらと思っています。

ご存知の方がおられましたら、
どうぞよろしくお願い致します。
まどか
ぬし
会議室デビュー日: 2005/09/06
投稿数: 372
お住まい・勤務地: ますのすし管区
投稿日時: 2008-02-26 11:21
5つと限定であるなら、CheckBoxを使って自由にレイアウトすればよいような。
そしてそのコンテナを白くして枠線を引くとか。

で、ListBoxの場合。
ListBoxはオーナードローできますが、CheckedListBoxは公開されていませんね。
なのでListBoxである必要(スクロールを任せる)があるならListBoxをオーナードローする方法があります。
ただ、チェックマークを二つ(Bitmapなど)用意してクリックで切り替える処理も書くことになります。

スクロールを無視して見た目の再現であれば、TableLayoutPanelはどうでしょうか。
列数を1にして必要な行数を確保します。
各行にCheckBoxを貼り付けCheckBoxのAlignをLeftにします。
あとはTableLayoutPanelの各行の高さを調整します。
もしくは、CheckBoxの高さを一定にしてTableLayoutPanelの各行の高さをAutoSizeにします。
ただし、TableLayoutPanelは枠線が格子状になるので、
外枠線を引けるコンテナを用意しそこへTableLayoutPanelを貼り付けることになります。
さくら
ベテラン
会議室デビュー日: 2004/02/12
投稿数: 76
投稿日時: 2008-02-27 09:27
お返事ありがとうございます。

CheckedListBoxに表示したい行数は可変で、
画面を表示する度に、データベースから取得した値を
バインドして表示する予定です。

プロパティの設定等で簡単に、
行間サイズを指定できる方法があればと思ったのですが、
やはり少し工夫が要りそうですね。

TableLayoutPanelを試してみたいと思います。
また何か良い方法等がありましたら教えてください。
ありがとうございました!!
1

スキルアップ/キャリアアップ(JOB@IT)