- - PR -
Listboxにテーブルをセットした際にテーブルの情報に合わせて文字や背景色を変更する方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-01-08 12:54
下記のような形でテーブルをリストボックスに表示させているのですが、
その時にテーブルの別のカラムにある『Status』や『priority』のカラムの情報を利用して背景色を変えたりフォントを強調(太文字)にしたりしたいのですが、 このようなことはできるのでしょうか? やはり、for文で回すしかないものでしょうか? また、一度DataViewを作成したうえでListBoxに取り込んでます。 DataView上でいろいろと制御できればいいなぁなどと考えてました。 例文 //listboxに目標を表示させる DataView.Table = Dataset.Tables[tablename]; Listcontrol.DisplayMember = "Title"; Listcontrol.ValueMember = "ID"; Listcontrol.DataSource = dv; Listbox.Refresh(); データセットの内容 ID Title Status priority 0 リンゴ 3 1 1 みかん 2 2 2 スイカ 3 3 3 イチゴ 1 1 やりたいこと ・Statusが3のものの背景色を灰色にする ・priorityが3のもののフォントを太文字にする 補足 Datatableを直接Listboxにいれた方が速度が速いと思い、できればfor文で回すなどはしたくないと考えてます。 |
|
投稿日時: 2008-01-08 15:54
私も一度はチャレンジしてみましたが、方法を見つけることが出来ず、DataGridViewに逃げました。
開発環境が掛かれていないので分からないですが、Visual Studio 2005以降なら、DataGridViewが使えるので、試してみては? ただし、背景に関しては、 C#2005 DataGridViewカラムに色をつけたい(atmarkit.co.jp) のスレッドで提示された問題を解決する必要がありそうです。 文字スタイル、色については、XPスタイルにしても、正しく反映してるっぽいので、たぶんだいじょぶそう。 |
|
投稿日時: 2008-01-08 19:30
かずくん様
やはりそうでしたか・・・。 無念です。 しかし、貴重な情報ありがとうございました。 |
1