<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!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"> <div> <asp:Panel ID="pnlTextBox" runat="server"> <asp:LinkButton ID="btnAddtxt" runat="server" OnClick="btnAdd_Click">Add TextBox <br /> <asp:Button ID="btnSave" runat="server" Text="Save" onclick="btnSave_Click" /> </div> /form> </body> </html>
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { // Panel pnlTextBox; protected void Page_Load(object sender, EventArgs e) { } protected void Page_PreInit(object sender, EventArgs e) { RecreateControls("txtDynamic", "TextBox"); } protected void btnAdd_Click(object sender, EventArgs e) { int cnt = FindOccurence("txtDynamic"); CreateTextBox("txtDynamic-" + Convert.ToString(cnt + 1)); } private int FindOccurence(string substr) { string reqstr = Request.Form.ToString(); return ((reqstr.Length - reqstr.Replace(substr, "").Length) / substr.Length); } private void CreateTextBox(string ID) { TextBox txt = new TextBox(); txt.ID = ID; pnlTextBox.Controls.Add(txt); Literal lt = new Literal(); lt.Text = "<br />"; pnlTextBox.Controls.Add(lt); } private void RecreateControls(string ctrlPrefix, string ctrlType) { string[] ctrls = Request.Form.ToString().Split('&'); int cnt = FindOccurence(ctrlPrefix); if (cnt > 0) { for (int k = 1; k <= cnt; k++) { for (int i = 0; i < ctrls.Length; i++) { if (ctrls[i].Contains(ctrlPrefix + "-" + k.ToString()) && !ctrls[i].Contains("EVENTTARGET")) { string ctrlID = ctrls[i].Split('=')[0]; if (ctrlType == "TextBox") { CreateTextBox(ctrlID); } break; } } } } } protected void btnSave_Click(object sender, EventArgs e) { } }
foreach(Control c in pnlTextBox.Controls) { TextBox t = c as TextBox; if(t!=null) { // do something with your text box here } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)