How to eliminate one of my extra DropDownLists in ASP.NET?
        Posted  
        
            by salvationishere
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by salvationishere
        
        
        
        Published on 2010-04-10T11:44:41Z
        Indexed on 
            2010/04/10
            12:03 UTC
        
        
        Read the original article
        Hit count: 256
        
I'm developing a C#/SQL web app in VS 2008 but for some reason I have one extra DropDownList. The very first dropdownlist displaying is empty. Can you help me identify the cause of this behavior? I'm baffled!
An excerpt of my code is below.
private DropDownList[] newcol;
// Add DropDownList Control to Placeholder
private DropDownList[] CreateDropDownLists()
{
    DropDownList[] dropDowns = new DropDownList[NumberOfControls];
    for (int counter = 0; counter < NumberOfControls; counter++)
    {
        DropDownList ddl = new DropDownList();
        SqlDataReader dr2 = ADONET_methods.DisplayTableColumns(targettable);
        ddl.ID = "DropDownListID" + counter.ToString();
        int NumControls = targettable.Length;
        DataTable dt = new DataTable();
        dt.Load(dr2);
        ddl.DataValueField = "COLUMN_NAME";
        ddl.DataTextField = "COLUMN_NAME";
        ddl.DataSource = dt;
        ddl.SelectedIndexChanged += new EventHandler(ddlList_SelectedIndexChanged);
        ddl.DataBind();
        ddl.AutoPostBack = true;
        ddl.EnableViewState = true; //Preserves View State info on Postbacks
        //ddlList.Style["position"] = "absolute";
        //ddl.Style["top"] = 80 + "px";
        //ddl.Style["left"] = 0 + "px";
        dr2.Close();
        dropDowns[counter] = ddl;
    }
    return dropDowns;
}
protected void ddlList_SelectedIndexChanged(object sender, EventArgs e)
{
    DropDownList ddl = (DropDownList)sender;
    string ID = ddl.ID;
}
//Create display panel
private void CreateDisplayPanel()
{
    btnSubmit.Style.Add("top", "auto");
    btnSubmit.Style.Add("left", "auto");
    btnSubmit.Style.Add("position", "absolute");
    newcol = CreateDropDownLists();
    for (int counter = 0; counter < NumberOfControls; counter++)
    {
        pnlDisplayData.Controls.Add(newcol[counter]);
        pnlDisplayData.Controls.Add(new LiteralControl("<br><br><br>"));
        pnlDisplayData.Visible = true;
        pnlDisplayData.FindControl(newcol[counter].ID);
    }
}
© Stack Overflow or respective owner