循环遍历控件

来源:互联网 发布:自由网络联盟翻墙软件 编辑:程序博客网 时间:2024/05/23 11:59

当页面有一组TextBox文本框,需要取值和赋值时,你可以这样做:

1、把这些TextBox放到一个Panel里。

2、设置TextBox的id,按序号定义它们的id。

像这样:

  <asp:Panel ID="itemPanel" runat="server">
            <asp:TextBox ID="txtItem1" runat="server" ></asp:TextBox>

            <asp:TextBox ID="txtItem2" runat="server" ></asp:TextBox>

            <asp:TextBox ID="txtItem3" runat="server" ></asp:TextBox>

                                 。。。
            <asp:TextBox ID="txtItem10" runat="server" ></asp:TextBox>

  </asp:Panel>

 

后台就可以用循环来对这组控件进行取值和赋值

取值

foreach (Control c in itemPanel.Controls)
{
    if (c.GetType().ToString() == "System.Web.UI.WebControls.TextBox")
    {
        TextBox txtTemp = c as TextBox;
         string item = txtTemp.Text;
     }
}

 

赋值

for (int i = 0; i < dt.Rows.Count; i++)
 {
      TextBox txtItem = (TextBox)itemPanel.FindControl("txtItem" + (i + 1).ToString());
      txtItem.Text = dt.Rows[i]["item"].ToString();
}