记录一下,主要是这句:
TextBox txtNum = e.Item.FindControl("txtNum") as TextBox;
Repeater真是太强了,太灵活。除了Repeater别的都不用。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![ExpandedBlockStart.gif](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
<
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 >
< 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 >
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![ExpandedBlockStart.gif](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
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();
}
// 参考MSDN:
// http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.repeater.itemcommand.aspx
{
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();
}
// 参考MSDN:
// http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.repeater.itemcommand.aspx