- - PR -
Repeaterを入れ子にするには
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-11-15 23:24
お世話になっております。
日を空けずに質問で恐縮ですが、表題の件について教えて下さい。 ASP.net + VB で 一行に 複数の行が含まれるリストを作成しております。 --------------------- 件名 |アクセス日| 人 | ---------------------| 重要 |8/11 | 田中 | |8/13 | 佐藤 | --------------------- 50件表示のページング機能も取り入れる為 PagedDataSourceクラス, DataTable, Repeaterの入れ子 で実現しようと思うのですが、内側のRepeater2にデータがバインドしません。 Repeater2の記述に、何かが足りない?DataTableでは入れ子にできない? 等を想像しているのですが、どうしても分からない為 大変お手数ですが、間違っている箇所等をご指摘頂けませんでしょうか。 ----------------------- <table> <tr> <th>件名</th> <th>アクセス日</th> <th>人</th> </tr> <asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> <tr> <td><%#DataBinder.Eval(Container.DataItem, "KENMEI")%></td> <td colspan="2"> ※枡を横2つ潰して、中に枡二つのテーブル作成 <table> <asp:Repeater ID="Repeater2" runat="server" DataSource='<%# DataBinder.Eval(Container.DataItem, "FILELST") % >'> <ItemTemplate> <tr> <td><%#DataBinder.Eval(Container.DataItem, "AKUSESU")%></td> <td><%#DataBinder.Eval(Container.DataItem, "HITO")%></td> </tr> </ItemTemplate> </asp:Repeater> </table> </td> </tr> </ItemTemplate> </asp:Repeater> </table> ----------------------- Private Shared Function GetSearchList() As PagedDataSource Dim dt As New DataTable Dim dr As DataRow Dim dt2 As New DataTable Dim dr2 As DataRow Dim pg As New PagedDataSource '内側のリピータソース dt2.Columns.Add("AKUSESU") 'アクセス日 dt2.Columns.Add("HITO") '人 dr2 = dt2.NewRow dr2("AKUSESU") = "8/11" dr2("HITO") = "田中" dt2.Rows.Add(dr2) dr2 = dt2.NewRow dr2("AKUSESU") = "8/13" dr2("HITO") = "佐藤" dt2.Rows.Add(dr2) '外側のリピータソース dt.Columns.Add("KENMEI") '件名 dt.Columns.Add("FILELST") dr = dt.NewRow dr("KENMEI") = "重要" dr("FILELST") = dt2 '※Repeater2の中身 dt.Rows.Add(dr) pg.DataSource = dt.DefaultView Return pg End Function ----------------------- Page_Load Private pgdArticles As New PagedDataSource pgdArticles = GetSearchList pgdArticles.AllowPaging = True pgdArticles.PageSize = 50 pgdArticles.CurrentPageIndex = 1 Repeater1.DataSource = pgdArticles Repeater1.DataBind() ------------------------- 結果 --------------------- 件名 |アクセス日| 人 | ---------------------| 重要 |(バインドされない)| | | --------------------- 長文申し訳ございません。 どうぞよろしくお願い致します。 [コード訂正いたしました] [ メッセージ編集済み 編集者: MI 編集日時 2007-11-15 23:27 ] |
|
投稿日時: 2007-11-19 13:59
ソース読んでませんが、過去ログが参考になりませんかね。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=2377&forum=7 |
|
投稿日時: 2007-11-19 20:39
まるく 様
ご回答ありがとうございます。 とても役立ちそうなリンクですね! Cを未経験なので、VBに少しずつ読み替えながら、テストしております。 解決までに、少々お時間頂きたく思います。 ありがとうございました。 |
1