Avatar billede Slettet bruger
10. december 2013 - 20:39 Der er 4 kommentarer og
1 løsning

Udskriv en liste inden i en liste med en repeater

Hej eksperter!

Jeg har denne ASP markup kode:

<asp:Repeater ID="repMenu" runat="server">
                    <HeaderTemplate>
                        <nav>
                            <ul>
                    </HeaderTemplate>
                    <ItemTemplate>
                        <li><a href="<%# Eval("Link") %>"><%# Eval("Name") %></a>
                            <asp:Repeater ID="repChild" runat="server">
                                <HeaderTemplate>
                                    <ul>
                                </HeaderTemplate>
                                <ItemTemplate>
                                        <li>
                                            <a href="<%# Eval("Link") %>"><%# Eval("Name") %></a>
                                        </li>
                                </ItemTemplate>
                                <FooterTemplate>
                                    </ul>
                                </FooterTemplate>
                            </asp:Repeater>
                        </li>
                    </ItemTemplate>
                    <FooterTemplate>
                            </ul>
                        </nav>
                    </FooterTemplate>
                </asp:Repeater>

Jeg binder datasourcen sådan i page_load metoden:

repMenu.Datasource = menu;
repMenu.Databind();

"menu" er et objekt af typen List<MenuItem>. MenuItem har 4 egenskaber: ID, Name, Link og Childs. Childs er endnu en List<MenuItem>.

Mit spørgsmål går på.. Hvordan binder jeg objektet Childs til repChild repeateren så den passer sammen med det objekt den er nået til i repMenu repeateren?

Jeg takker på forhånd :).
Avatar billede arne_v Ekspert
10. december 2013 - 20:45 #1
Angiver en datasource attribut i din indre repeater som henter childs.
Avatar billede Slettet bruger
10. december 2013 - 20:50 #2
Det kan jeg selvfølgelig godt se. Men problemer er at jeg ikke kender så forfærdeligt meget til ASP.NET markup, kun C# delen. Så jeg ved ikke rigtigt hvordan jeg får datasourcen fra child repeateren, til at få data fra parrent om hvilken den er i gang med at udskrive :-/.

Har du nogle gode tutorials omhandelende dette? Jeg har forgæves prøvet at søge efter nogle.
Avatar billede Slettet bruger
10. december 2013 - 20:56 #3
Jeg fandt ud af det, med hjælp fra din idé!

Jeg lavede satte denne attribut ind:

DataSource=' <%# Eval("Childs") %>'

Læg et svar, så får du point :). Tak for hjælpen!
Avatar billede arne_v Ekspert
10. december 2013 - 20:58 #4
proev:

<asp:Repeater ID="repChild" runat="server" datasource='<%# Eval("Childs") %>'>
Avatar billede arne_v Ekspert
10. december 2013 - 21:01 #5
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester