- - PR -
DataGridに値を設定する方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-03-24 14:06
DataGridにデータを表示させたいのですが、
セルごとに値を設定していくことは可能でしょうか? 今までは、SQL文でデータを検索してDataSetを作成し、 DataGrid1.DataBind()で、DataGridに結果を表示していました。 今回は、検索結果を一気にBindではなく、このデータは何行目の何列目に・・・ のようにひとつづつ設定を行って表示させたいのです。 というのは、ヘッダには1〜31までの日付を並べておいて 検索データの日付と比較し、該当の日付のセルに値をセット・・という処理を 行いたいからです。 個々のセルにアクセスする方法としてDataGrid1.Items(i).Cells(j).Text = "" を使用する方法は見つけたのですが、これはDataGridにデータが連結された後に 有効なので、連結する前から使用することはできません。 どなたかいい方法があればご教授願います。 | ||||
|
投稿日時: 2004-03-24 15:10
この場合、わたしはDataGridで操作するのではなく表示用のDataSetを作成して
読み込んできたデータを表示用のDataSetに格納してそれをDataGridにバインド しています。 | ||||
|
投稿日時: 2004-03-24 15:31
ゆうじゅんさん、ありがとうございます。
>表示用のDataSetを作成して 読み込んできたデータを表示用のDataSetに格納 とありますが、表示用のDataSetの作成というのがよくわかりません。 検索対象のテーブルには1〜31の日付を直接あらわす項目(列名?)はないのです。 日付項目(YYYYMMDD形式で格納)からDDの部分をみて該当日付に設定したいのです。 何か的外れなことを言っていたらすいません。 とりあえずDataSetについてもう一度調べてみようと思います・・・ | ||||
|
投稿日時: 2004-03-24 15:43
データを取ってから加工するのではなく、SQLのSELECT文を1〜31の列を表示するように書いたらどうでしょう。
| ||||
|
投稿日時: 2004-03-24 16:07
データセットはDBにあるテーブルがなくても作成できます。
メニューの「プロジェクト」→「新しい項目の追加」→「データセット」 あとは1〜31の項目を持つテーブルを新規作成して下さい。 あとはデータセットではなくデータテーブルをプログラム内部で作成するとか (こっちのほうが楽かもしれません)
| ||||
|
投稿日時: 2004-03-24 16:26
一郎さん、ゆうじゅんさん、ありがとうございます。
>データセットはDBにあるテーブルがなくても作成できます。 そんな方法があるんですね! 調べながらさっそくやってみようと思います。 また質問するかもしれませんので、その時はよろしくお願いします。 |
1