ASPX页面:

增加两个事件,及传值。

<asp:Repeater ID="rptList" OnItemDataBound="rptList_ItemDataBound" OnItemCommand="rptList_ItemCommand" runat="server" DataSourceID="SqlDataSource1">
   <ItemTemplate>
     <%#Eval("Title") %>   
    <asp:Button ID="btnPass" runat="server" Text="Pass" CssClass="btn" CommandName="btnPass" ItemEventArgs=<%# Eval("Title") %> CommandArgument=<%# Eval("Title") %> />     
  </ItemTemplate>
</asp:Repeater>

CS页面:

     protected void rptList_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        {
            if (e.CommandName == "btnPass")
            {
                string strCA = e.CommandArgument.ToString();
            }
            Response.Write(e.CommandArgument.ToString());
        }
    }
    protected void rptList_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        Response.Write(e.Item.ToString());
     }

 

简单说明四处

1:OnItemDataBound="rptList_ItemDataBound"

     这个事件,跟按钮点击事件,并没有关系。在这里。只是用于控制按钮的显示状态。

2:OnItemCommand="rptList_ItemCommand"

     这个事件,就是重点啦。用于当触发Command相关的事件,用于,当点击了按钮后,触发要执行的代码。

3:CommandName="btnPass" 

    主要是每个按钮的标识,相当于ID一样。用于后台代码找到,你点击的是哪个按钮。

4:CommandArgument="<%# Eval("Title") %> "

     传值,object 类型。 比如你可以把这一行数据的ID传进去。当然可以把整个Entity传进去。

相关文章:

  • 2022-12-23
  • 2021-11-03
  • 2021-06-11
  • 2022-01-29
  • 2022-02-03
  • 2021-08-30
  • 2021-11-01
  • 2021-06-17
猜你喜欢
  • 2022-12-23
  • 2021-11-24
  • 2022-12-23
  • 2021-06-14
  • 2021-06-16
相关资源
相似解决方案