2

HTML:

<asp:LinkButton ID="lnk_productImage" runat="server" Text="select"
   OnClick="viewProductImage('<%#DataBinder.Eval(Container.DataItem,"Id") %>')"
   >
</asp:LinkButton>

代码隐藏:

protected void viewProductImage(object sender, EventArgs e, int id)
{ 
    //Load Product Image
}
4

2 回答 2

9

我看到您正在使用中继器,因此您可能可以使用以下代码:

在您的转发器模板中:

<asp:Repeater ID="_postsRepeater" runat="server" OnItemCommand="_postsRepeater_ItemCommand">
  <ItemTemplate><asp:LinkButton ID="_postDeleteLinkButton" runat="server" CommandName="DeletePost" CommandArgument="<%# ((Post)Container.DataItem).ID %>">Delete</asp:LinkButton></ItemTemplate>
</asp:Repeater>

然后处理转发器的 ItemCommand 事件:

protected void _postsRepeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    if (e.CommandName == "DeletePost") // Replace DeletePost with the name of your command
    {
        // Get the passed parameter from e.CommandArgument
        // e.g. if passed an int use:
        // int id = Convert.ToInt32(e.CommandArgument);
    }
}
于 2009-04-22T03:39:25.010 回答
6

使用 linkbutton 的 CommandArgument 属性来传递参数。

CommandArgument 属性:

获取或设置传递给 Command 事件处理程序的可选参数以及关联的命令名称属性。

链接按钮成员

于 2009-04-22T03:24:29.117 回答