Avatar billede henrik_40 Nybegynder
30. august 2007 - 12:44 Der er 6 kommentarer og
1 løsning

liste af links fra code-behind

Hej
Jeg vil gerne lave en liste af links fra denne uge og fremad. Således:
uge35
uge36
uge37
osv.


dette kan klares med nedenstående for-løkke i code-behind-filen:

        int weekNow = getWeek();
        String linkstring = "";
        for (int i = weekNow; i < 52; i++)
        {
            linkstring = "week" + i;
        }


Problemet er hvordan jeg får linksene over i aspx-filen. Jeg har lavet dette 100 gange med databasekald til en repeater: datasource = .... databind().

Kan jeg ikke lave noget lign. med min løkke?

/henrik
Avatar billede mikkel_sommer Nybegynder
30. august 2007 - 12:58 #1
Kan du ikke smide dine links ind i en ArrayList og så angive den som datasource og kald databind?
Avatar billede henrik_40 Nybegynder
30. august 2007 - 13:08 #2
Det vil jeg prøve
Avatar billede henrik_40 Nybegynder
30. august 2007 - 15:09 #3
Kan stadig ikke finde ud af hvordan man binder:
Fra cs-filen:
      int[] weekArray;
        weekArray = new int[53];

        for (int i = weekNow; i < 52; i++)
        {
            weekArray[i] = i;
        }

        testrep.DataSource = weekArray;
        testrep.DataBind();


aspx.filen.


      <asp:Repeater id="testrep" runat="server">
          <ItemTemplate>
          <%#Eval("i") %>
        <asp:Label runat="server"> </asp:Label>
          </ItemTemplate>
      </asp:Repeater>

Kan du sige mig hvad jeg skal gøre?
Avatar billede mikkel_sommer Nybegynder
30. august 2007 - 15:13 #4
prøv med:

ArrayList weekArray = new ArrayList();

for (int i = 0; i < 52; i++)
{
    weekArray.Add("Uge " + i.ToString());
}
Avatar billede mikkel_sommer Nybegynder
30. august 2007 - 15:14 #5
og selvfølgelig:

        testrep.DataSource = weekArray;
        testrep.DataBind();

...den glemte jeg lige
Avatar billede henrik_40 Nybegynder
30. august 2007 - 15:36 #6
Har kopieret din kode, men det er i aspz-filen jeg ikke kan finde ud af at hente data:

      <asp:Repeater id="testrep" runat="server">
          <ItemTemplate>
            <%#Eval("weekArray[i]")%>
        <asp:Label runat="server"> </asp:Label>
          </ItemTemplate>
      </asp:Repeater>
Avatar billede henrik_40 Nybegynder
31. august 2007 - 06:42 #7
Hej Mikkel
Det var <%# Container.DataItem %> i aspx-filen som jeg søgte til at få vist arrayet på hjemmesiden. Nedenstående eksempel virker og illustrerer hvad jeg mener.
Jeg tillader mig at snuppe point. Håber det er ok.  Takker for din hjælp som ledte mig på det rigtige spor.

aspx-filen

-----------


<asp:Repeater runat="server" id="ColourRepeater">

<ItemTemplate>

<%# Container.DataItem %> <br>

</ItemTemplate>

</asp:Repeater>



cs-filen

---------

private string[] dayArray = { "Monday", "Tusday", "Wednesday", "Thrusday", "Friday", "Saturday", "Sunday" };

protected void Page_Load(object sender, EventArgs e)

{

ColourRepeater.DataSource = dayArray;

DataBind();
}
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