您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp.net编程 >> 正文

Repeater事件OnItemCommand取得行内控件的方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

这篇文章主要介绍了Repeater事件OnItemCommand取得行内控件的方法,有需要的朋友可以参考一下

记录一下,主要是这句:

TextBox txtNum = e.Item.FindControl("txtNum") as TextBox;

 

Repeater真是太强了,太灵活。除了Repeater别的都不用。

 

 代码如下:

<table>

    <asp:Repeater ID="rptList" runat="server"OnItemCommand="rptList_ItemCommand">

    <ItemTemplate>

<tr>

    <td><asp:TextBox ID="txtNum" runat="server" Text='<%#Eval("ProNum")%>'></asp:TextBox></td>

    <td><asp:Button ID="btnUpdate" runat="server" Text="更新"CommandName="update" CommandArgument='<%#Eval("PID") %>' /></td>

</tr>

    </ItemTemplate>

    </asp:Repeater>

</table>

 

代码如下:

protected void rptList_ItemCommand(object source, RepeaterCommandEventArgs e)

{

    switch (e.CommandName)

     {

        case "update":

            string arg = e.CommandArgument.ToString();//取得参数

            //找到激发事件的行内控件,这个很有用,能将更多需要的参数值传递过来。

             TextBox txtNum = e.Item.FindControl("txtNum") as TextBox;

 

            //下面执行业务逻辑

            string jsStr = "<script>alert('删除成功!" + txtNum.Text + "')</script>";

             Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "alert", jsStr,false);

            break;

     }

     Bind();

}