How to Access value of dynamically created control?
- by sharad
i have asp.net web application in which i need to create form dynamically depend upon table which user selected.however,i created form dynamically with it's control like text box,drop downlist etc. but not able to access those controls at particular button click event.
My form scenario is like this:
i have dropdownlist in which i display list of tables,button control say display( on click event which i redirect page with some addition in querystring so that at page init it dynamically genrate controls) and another button control which used to access this controls value say Submit and store in database.
This is my code:
At Display button Click event:
Response.Redirect("dynamic_main.aspx?mode=edit&tablename=" + CMBTableList.SelectedItem.ToString());
This is code For page.Init level
if (Request.QueryString["mode"] != null)
{
if (Request.QueryString["mode"].ToString() == "edit")
{
Session["tablename"] = Request.QueryString["tablename"].ToString();
// if (Session["tablename"].ToString() == CMBTableList.SelectedItem.ToString())
//{
createcontrol(Session["tablename"].ToString());
// }
}
}
i have used createcontrol() which genrate controls
Code For Submit Button:
string[] contid=controlid.Value.Split(',');
MasterPage ctl00 = FindControl("ctl00") as MasterPage;
ContentPlaceHolder cplacehld = ctl00.FindControl("ContentPlaceHolder2") as ContentPlaceHolder;
Panel panel1 = cplacehld.FindControl("plnall") as Panel;
Table tabl1 = panel1.FindControl("id1") as Table;
foreach (string sin in contid)
{
string splitcvalu = sin.Split('_')[0].ToString();
ControlsAccess contaccess = new ControlsAccess();
if (splitcvalu.ToString() == "txt")
{
TextBox txt = (TextBox)tabl1.FindControl(sin.ToString());
//TextBox txt = cplacehld.FindControl(sin.ToString()) as TextBox;
val = txt.ID;
}
else
{
DropDownList DDL = cplacehld.FindControl(sin.ToString()) as DropDownList;
}
}
Here i am no able to access this textbox or drop downlist.i am getting id of particular control from hidden field controlid in which i have stored it during genrating controls. i have used findcontrol() it works in case of finding masterpage,contentplaceholder,table etc. but in case of textbox or other control it doesnt work it shows it returns null. Anyone can help me.
Thanks