Re: Nested repeater with 3 levels

From: Karl Seguin (_at_)
Date: 02/03/05


Date: Thu, 3 Feb 2005 18:29:16 -0500

Erik:
Weird, everything looks good...While you shouln't have to, maybe if you move
the nesting to the OnItemCommand event you'll figure out hte problem:
http://openmymind.net/databinding/index.html#7.2

Karl

-- 
MY ASP.Net tutorials
http://www.openmymind.net/
"Eirik Eldorsen" <kunsoppel@hotmail.com> wrote in message
news:%23I5YgkjCFHA.3376@TK2MSFTNGP12.phx.gbl...
> Im trying to make a nested repeater with 3 levels. I've successfully
created
> a nested repeater with 2 levels, but when adding the 3rd level I get an
> InvalidCastException. What am I doing wrong?
>
>
> Here is my code:
>
>
> <asp:Repeater id="level1Repeater" runat="server">
>      <itemtemplate>
>         <a href="#"><%# DataBinder.Eval(Container.DataItem, "Title")
%></a>
>         <br>
>         <asp:repeater id="level2Repeater" runat="server" datasource='<%#
> ((DataRowView)Container.DataItem).Row.GetChildRows("L1L2") %>' >
>             <itemtemplate>
>                 &nbsp;<a href="#"><%# DataBinder.Eval(Container.DataItem,
> "[\"Title\"]")%></a>
>                 <br>
>                 <asp:repeater id="level3Repeater" runat="server"
> datasource='<%# ((DataRowView)Container.DataItem).Row.GetChildRows("L2L3")
> %>' >
>                     <itemtemplate>
>                         &nbsp;&nbsp;<a href="#"><%#
> DataBinder.Eval(Container.DataItem, "[\"Title\"]")%><br></a>
>                     </itemtemplate>
>                 </asp:Repeater>
>             </itemtemplate>
>         </asp:Repeater>
>     </itemtemplate>
> </asp:Repeater>
>
>
>
> Code Behind:
>
> private void BindWebsites()
> {
>      level1Repeater.DataSource = Websites.GetAll();
>      Page.DataBind();
> }
>
> public static DataTable GetAll()
> {
>     .......
>     ds.Relations.Add("L1L2", ds.Tables["WebsitesL1"].Columns["ID"],
> ds.Tables["WebsitesL2"].Columns["ParentID"]);
>     ds.Relations.Add("L2L3", ds.Tables["WebsitesL2"].Columns["ID"],
> ds.Tables["WebsitesL3"].Columns["ParentID"]);
>
>     return ds.Tables["WebsitesL1"];
> }
>
>
> --
> Eirik Eldorsen
>
>