質問は本当に簡単です。 asp Repeaterコントロールの現在のポインター/カウンターにアクセスする方法はありますか。
アイテムのリストがあり、リピーター列の1つ(リピートとhtmlテーブル)を次のようにしたい...
アイテム1 |いくつかの情報
アイテム2 |いくつかの情報
... 等々
1と2がカウンターです。
リピーターにアイテム番号を表示するには、Container.ItemIndex
プロパティ。
<asp:repeater id="rptRepeater" runat="server">
<itemtemplate>
Item <%# Container.ItemIndex + 1 %>| <%# Eval("Column1") %>
</itemtemplate>
<separatortemplate>
<br />
</separatortemplate>
</asp:repeater>
ラベルコントロールをRepeater's ItemTemplateに追加します。 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>
コードビハインド:
protected void RepeaterItemCreated(object sender, RepeaterItemEventArgs e)
{
Label l = e.Item.FindControl("lblSr") as Label;
if (l != null)
l.Text = e.Item.ItemIndex + 1+"";
}