- - PR -
DataGridレコードに条件によってメッセージを。。
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-06-28 23:53
こんにちは
select no,msg from table で検索結果をDataGridに表示させており、 msg列が 1だったら赤色で[商品A] 2だったら青色で「商品B」としたいのですが、 条件によって表示を変えるやり方がわかりません。 カスタム連結式を使うのだろうとは思いますが。。いまいちわかりません。 色指定は難しくてもIF条件で表示内容を変更してみたいのですが、やり方教えてください。 |
|
投稿日時: 2003-06-29 16:54
こんにちわ。
質問にお答えする前に、まず最初にお聞きしたいことがあります。 DataGridに表示させるとありますが、どの種類のDataGridでしょうか? WindowsApplicationのDataGridですか?それともASP.NETアプリケーションのDataGridのことですか?両者は、同じDataGridでも、まったく別物のコントロールなので、解決策も異なってきます。 後者のASP.NETアプリケーションのDataGridでしたら、以前私が書き込んだ別のスレッド「DataGridにて行数表示方法」が参考になるかと思います。 (ソースを掲載しているスレッドです) 目的は異なりますが、使ってる技術は同じなので、応用で何とか解決できるかと思います。 |
|
投稿日時: 2003-06-29 23:58
こんにちは。
初めて会議室に投稿します。 ASP.NETでのお話だと仮定して答えます。 以下の例は・・・ 左から1番目の列の値が「True」の場合に、 そのレコード全体の文字色を「LightGray」に設定する、 と言うものです。(※言語:VB.NET) この作業をDataGridにDataBindした後に行うと、お望みの行が指定の文字色になります。これで解決しましたでしょうか? ちなみに、dgridはDataGridのIDとなります。 -------------------------- Dim di As DataGridItem For Each di In dgrid.Items If di.Cells(0).Text = "True" then di.ForeColor = Color.LightGray End If Next -------------------------- |
|
投稿日時: 2003-07-01 10:17
ZEBRA様モデラート様
ありがとうございます。 インターネットがやっと使える場所で返事書いております。 遅くなりまして申し訳ございません。 ZEBRA様 これから過去のログ見させて頂きます。 ASP.NETでの話でした。提供する情報が少なかった事申し訳ございません。 こちらで実装してみてその結果また報告させて頂きます。 モデラート様ソースコードありがとうございます。 このコードはDataBindした後でよいのですね。 参考になります。 イメージがつかめなかったのはDatabindしてからではDataGridの描画が行われてしまった後なのでその描画してしまったDataGridコントロールを操作して何かするというのは私の頭では考えられなかったです。 |
|
投稿日時: 2003-07-04 01:02
こんにちはTOKIOさん。
参考になったようで、嬉しい限りです。 私もDataBindした後では変更が不可能かと思ったのですが、ある書籍を読んでいるとこのように書いてあったので、参考にいたしました。 まだまだこれからも書籍には頼る事になりそうです・・・。 お互い頑張りましょう! |
1