如何找到我点击过的RepeaterItem?

时间:2011-04-08 16:19:51

标签: asp.net

我正在创建一个具有Repeater控件的简单ASP页面。该转发器控件包含LinkBut​​tons;因此,当中继器的项目大小增加时,LinkBut​​ton的数量也会增加。我的问题是,如何识别我点击LinkBut​​ton的RepeaterItem?

我虽然使用Foreach来搜索RepeaterItem但我不知道应该用什么条件来识别我所穿过的Linkbutton。顺便说一句,每个LinkBut​​ton具有相同的名称和相同的ID。

我的目标是获取Linkbutton所属的RepeaterItem

谢谢, Y_Y

6 个答案:

答案 0 :(得分:4)

  • 为您的LinkBut​​ton分配Command / ComandArgument
  • 为Repeater分配处理程序“OnCommand”并创建事件处理程序
  • 在处理程序中,您将获得RepeaterCommandEventArgs - 使用item属性访问

答案 1 :(得分:1)


你可以使用:
- LinkBut​​ton的Tag属性,用于存储对象以识别LinkBut​​ton
- 在Repeater模板中包含隐藏字段以存储识别Linkbutton的内容 - 使用LinkBut​​ton的CommandArgument
- ......

答案 2 :(得分:0)

答案 3 :(得分:0)

您可以使用所谓的“ItemCommand”

或者您可以设置LinkBut​​ton的CommandArgument。

protected void lnkButton_Click(object sender, EventArgs e) {
    LinkButton _sender = (LinkButton)sender;
    string argument = _sender.CommandArgument;
}

答案 4 :(得分:0)

此方案的常见解决方案是使用按钮的CommandName和/或CommandArgument属性。只需将CommandArgument绑定到放入转发器的对象的ID即可。可以在单击处理程序中访问命令参数。

答案 5 :(得分:0)

在之前的帖子中有类似的查询。

请查看 - How to find checked RadioButton inside Repeater Item?