Monday, 29 August 2011

hierarchy Dominates

Always follow the hierarchy of page while using Find Control...
as a new dynamic control may be placed in any placeholder..
so while finding for the new dynamic control...follow the following hierarchy:-

this.placeholder1.FindControl();

Thursday, 25 August 2011

Inserting values into and from database using dynamic controls

protected void btnadd_Click(object sender, EventArgs e)
    {
        this.AddControl(this.DynamicControlCounter, this.DynamicControlCounter.ToString());

        this.DynamicControlCounter++;
        if (PlaceHolder1.Controls.Count > 0)
        {
            for (int i = 0; i < this.DynamicControlCounter; i++)
            {
                DropDownList ddlcity = (DropDownList)FindControl("dynamicddl_" + i);
                ddlcity.DataSource = ds;
                ddlcity.DataTextField = "city";
                ddlcity.DataBind();
            }
        }
    }




 protected void btnsave_Click(object sender, EventArgs e)
    {
        adpt= new SqlDataAdapter("insert into tab_name values('" + TextBox1.Text + "','" + DropDownList1.SelectedItem.ToString() + "')", con);
        adpt.Fill(ds);
        if (PlaceHolder1.Controls.Count > 0)
        {
            for (int i = 0; i < DynamicControlCounter; i++)
            {
                TextBox txtname = (TextBox)FindControl("dynamictext_" + i);
                DropDownList ddlcity = (DropDownList)FindControl("dynamicddl_"+i);
                adpt = new SqlDataAdapter("insert into tab_name values('" + txtname.Text + "','" + ddlcity.SelectedItem.ToString() + "')", con);
                adpt.Fill(ds);
            }
        }
    }

Adding dynamic controls to ASP.NET Pages

protected void Page_Load(object sender, EventArgs e)
    {
        for (int i = 0; i < this.DynamicControlCounter; i++)
        {
            this.AddControl(i, i.ToString());
        }
    }
protected virtual int DynamicControlCounter
  {
      get
        {
            object viewState = this.ViewState["DynamicControlCounter"];
            return (viewState == null) ? 0 : (int)viewState;
        }
        set
        {
            this.ViewState["DynamicControlCounter"] = value;
        }
    }
protected void AddControl(int controlNumber, string labelText)
    {
        // Create the Control...
        TextBox  dynamictext = new TextBox();

        // Set some properties...
        dynamictext.ID = "dynamictext_" + controlNumber.ToString();
        DropDownList dynamicddl = new DropDownList();
        dynamicddl.ID = "dynamicddl_" + controlNumber.ToString();

        // If not the first control, add a line break...
        if (this.PlaceHolder1.Controls.Count > 0)
            this.PlaceHolder1.Controls.Add(new LiteralControl("<br>"));

        // Add the Control to a PlaceHolder...
        this.PlaceHolder1.Controls.Add(dynamictext);
        if (this.PlaceHolder1.Controls.Count > 0)
            this.PlaceHolder1.Controls.Add(new LiteralControl("&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp"));
        this.PlaceHolder1.Controls.Add(dynamicddl);
       
    }
protected void btnadd_Click(object sender, EventArgs e)
    {
        this.AddControl(this.DynamicControlCounter, this.DynamicControlCounter.ToString());
        this.DynamicControlCounter++;
    }