[英]repeater linkbutton not firing
我有一个中继器,并且在其中有一个链接按钮,该中继器绑定到OnItemCommand,但事件未触发,这是我的代码:
<asp:Repeater ID="rptList" runat="server" OnItemDataBound="rpt_OnItemDataBound" OnItemCommand="rptList_ItemCommand">
<ItemTemplate>
<asp:LinkButton ID="lbName" Text='<%# Eval("Name") %>' runat="server"
CommandArgument='<%# Eval("ID").ToString() %>' CommandName="NameClick">
</asp:LinkButton><br />
<asp:Label ID="lblCreateDate" runat="server" Text='<%# Eval("CreateDate") %>' /><br />
<br />
</ItemTemplate>
</asp:Repeater>
这是背后的代码:
protected void rptList_ItemCommand(object source, RepeaterCommandEventArgs e)
{
switch (e.CommandName)
{
case "NameClick":
Guid id = (Guid)e.CommandArgument;
//do something
break;
default:
break;
}
}
根据Ram S的注释,您需要确保在回发时不重新绑定转发器(请参阅此问题, 在linkbutton click上不会触发转发器的Item命令事件 )
您也将无法以这种方式投射Guid-更改此行代码
Guid id = (Guid)e.CommandArgument;
对此
Guid id = new Guid(e.CommandArgument.ToString());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.