在转发器中列出用户,如何在单击行的按钮时获取UserId

时间:2009-09-17 18:07:14

标签: asp.net repeater

我有一个列出用户的转发器。

每一行都有userId,username等,最后一列有一个按钮。

单击该按钮时,如何获取当前行的用户ID?

3 个答案:

答案 0 :(得分:2)

您可以添加OnItemCommand事件,并将UserId绑定到按钮的CommandArgument。

<asp:Repeater ID="repeater1" runat="server" OnItemCommand="repeater1_ItemCommand">
    <ItemTemplate>
        <asp:Button ID="button1" runat="server" CommandArgument='<%#Eval("UserId")%>' />
    </ItemTemplate>
</asp:Repeater>

代码背后:

protected void repeater1_ItemCommand(object sender, RepeaterCommandEventArgs e)
{
    Guid userId = new Guid(e.CommandArgument.ToString());
}

答案 1 :(得分:1)

我还发现在行上使用隐藏字段也很有帮助。

答案 2 :(得分:0)

之前的答案都很好。

如果您对“普通旧”HTML回发感兴趣(而不是通过ASP.NET的回发机制),请使用Anthony的方法(隐藏字段)。

否则,请使用sshow。它对.NET框架来说有点“惯用”(至少通过2.0版本)。