毎々参考にさせていただいております。早速ですが、質問させていただきます。
あるフォームにDataGridViewを貼り付けて、データベースのデータを表示させる
プログラムなのですが、処理の順番は下記手順で行っております。
①SQL文でデータを取得します。
("SELECT 列A FROM テーブル名")
②①の結果をDataTableに格納します。
(DBDataAdapter.Fill(DataTable)を使ってます。)
③②で結果を格納したDataTableをDataGridView.DataSourceに設定して、データ
を表示します。(DataGridView.DataSource = DataTable)
上記の手順の関係上、またパフォーマンス向上のためにデータベース上から取得
した値を直接表示する場合以外は、基本的にSQLのCASE〜WHEN〜END文などを使用
してSQL上で加工して取得してから表示しているのですが、直接表示出来ない場合
例えばSQLで取得した値によってDataGridView内のセルの文字色とテキストを変更
したい場合には、どうしたらいいでしょうか?
一応、上記3つの手順の最後に④として、DataGridViewを列数でループして、表示
値を変更したり、DataGridView.Columns(n).DefaultCellStyleを変更してみたり
したのですが、処理が非常に重かった次第です。
具体的な例としては、上記SQLで列Aの値が0,1,2の場合によってそれぞれ、
表示するテキスト ⇒"A","B","C"
表示文字色 ⇒Color.Blue, Color.Yellow, Color.Red
にしたい場合にはどうすればよろしいでしょうか?
開発環境:Visual Studio 2005
使用DB:Microsoft SQL Server 2005 Express Edition
ぜひご教示いただきたく、よろしくお願い致します。
すみません。
開発言語を書き忘れました。VBです。
申し訳ありません。
CellFormattingイベントの中身を変更したらできました。
掲示板を汚してしまってすみませんでした。