- PR -

GridViewの表示列をカスタマイズしたい

1
投稿者投稿内容
まいどん
会議室デビュー日: 2007/03/28
投稿数: 13
投稿日時: 2007-04-04 14:11
現在ASP.NET + C#で開発をしています。
自分も含めて経験が浅い人ばかりで、自分たちで調べながらやっていたのですが行き詰まってしまった為質問をしたいと思います。

ASPのGridViewを使用して
ヘッダーにコード、名称、各月(4月〜3月)を1行でもっていて。
明細はコード、名称1行。各月は前々年、前年、当年と3行で表示させたいのです。
データについては1レコードとしてDBから取得できていて、後は表示の部分だけです。
<Columns>の中をどうにかすれば出来るとは思うのですが、やり方が見つけられません。
先輩方のアドバイスをぜひお願いします。


[ メッセージ編集済み 編集者: まいどん 編集日時 2007-04-04 14:16 ]
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2007-04-04 14:59
たとえばこんな方法とか。
http://dotnetfan.org/blogs/dotnetfanblog/articles/672.aspx
まいどん
会議室デビュー日: 2007/03/28
投稿数: 13
投稿日時: 2007-04-04 17:03
どっとねっとふぁんさんありがとうございます。
おかげ様で明細部については<TemplateField>を使う事によって解決出来ました。

しかしフッターにも同様に各月の前々年、前年、当年の総合計をそれぞれを違う行で表示させたいのですが<TemplateField>の中に<FooterTemplate>を入れてみたのですが、
行の一番最後に表示されてしまいうまいこといきません。
フッターについてはC#でGridView_RowDataBoundを使ってGridViewRowEventArgs.Row.RowType == DataControlRowType.Footerになるまで金額を足しこんでいき、最後にe.Row.Cells[].Textに各金額を入れてフッター行を作成しています。
フッター行も明細と同様に3行にしたいのですがどのようにすればいいでしょうか。

まいどん
会議室デビュー日: 2007/03/28
投稿数: 13
投稿日時: 2007-04-04 19:38
自己解決しました。

最後にe.Row.Cells[].Textに書き込む時に
前々年〜当年までを連結してあげて、間に<br/>タグを間にはさんであげる事で改行してくれました。

1

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