Asp.Net Repeater中使用Button控件并响应单击操作的方法
代码
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<asp:Repeater runat="server" iD="rptTest">
<itemtemplate>
<div>
<asp:TextBox id="txt" text='<%# Container.DataItem.ToString() %>' runat="server" />
<asp:Button id="btn" text="提交" onclick="TestBtn" runat="server" />
</div>
</itemtemplate>
</asp:Repeater>
</form>
</body>
</html>
代码
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
string[] s = new string[] { "1", "2", "3", "4", "5" };
this.rptTest.DataSource = s;
this.rptTest.DataBind();
}
}
protected void TestBtn(object sender, EventArgs e)
{
Button bt = sender as Button;
RepeaterItem ri = bt.Parent as RepeaterItem;
TextBox tx = ri.FindControl("txt") as TextBox;
if (!object.Equals(tx, null))
{
Response.Write(tx.Text);
}
}