私は次のように私のasp.netページでasp.netリピーターを使用しています:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:Label ID="lblsSICCode" runat="server" Text='<%# Eval("sSICCode") %>'></asp:Label>
<asp:LinkButton ID="lnkSelect" runat="server" CommandArgument='<%# Eval("sSICCode") %>' OnCommand="LinkButton1_Command" CommandName="MyUpdate">Select</asp:LinkButton>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("sSICCode") %>'></asp:Label>
</ItemTemplate>
</asp:Repeater>
リンクボタンがクリックされるたびにラベルテキストを変更したい。次のコードを使用していますが、すべてのリピーターのラベルが変更されます。選択した行の前にあるLabel1は、mylabelの値を取得する必要があります。
Protected Sub LinkButton1_Command(sender As Object, e As CommandEventArgs)
If e.CommandName = "MyUpdate" Then
For Each RI As RepeaterItem In Repeater1.Items
Dim MyLabel As Label = TryCast(RI.FindControl("lblsSICCode"), Label)
If MyLabel IsNot Nothing Then
If MyLabel.Text = e.CommandArgument Then
Response.Write(e.CommandArgument + "<br />")
End If
End If
Next
End If
End Sub