Die Frage ist wirklich einfach. Gibt es eine Möglichkeit, auf den aktuellen Zeiger / Zähler für eine asp Repeater-Steuerung zuzugreifen?
Ich habe eine Liste mit Elementen und möchte, dass eine der Repeater-Spalten (sie wiederholt sich und eine HTML-Tabelle) so etwas wie ...
Punkt 1 | einige Infos
Punkt 2 | einige Infos
... und so weiter
1 und 2 sind der Zähler.
Antworten:
Um die Artikelnummer auf dem Repeater anzuzeigen, können Sie die
Container.ItemIndex
Eigenschaft verwenden.<asp:repeater id="rptRepeater" runat="server"> <itemtemplate> Item <%# Container.ItemIndex + 1 %>| <%# Eval("Column1") %> </itemtemplate> <separatortemplate> <br /> </separatortemplate> </asp:repeater>
quelle
Fügen Sie der ItemTemplate Ihres Repeaters ein Beschriftungssteuerelement hinzu . Behandeln Sie das Ereignis OnItemCreated.
ASPX
<asp:Repeater ID="rptr" runat="server" OnItemCreated="RepeaterItemCreated"> <ItemTemplate> <div id="width:50%;height:30px;background:#0f0a0f;"> <asp:Label ID="lblSr" runat="server" style="width:30%;float:left;text-align:right;text-indent:-2px;" /> <span style="width:65%;float:right;text-align:left;text-indent:-2px;" > <%# Eval("Item") %> </span> </div> </ItemTemplate> </asp:Repeater>
Code dahinter:
protected void RepeaterItemCreated(object sender, RepeaterItemEventArgs e) { Label l = e.Item.FindControl("lblSr") as Label; if (l != null) l.Text = e.Item.ItemIndex + 1+""; }
quelle