In my case I had 2 dropdowns(Categories and SubCategories) where SubCategories items depend on choice of the Category selected. so AppendDataBoundItems = "True for me did not make sence.
I found the this code to work for OnSelectedIndexChanged event of the first (Categories) dropdown
cboSubCategories.DataSourceID = ""; //clear datasource
cboSubCategories.DataSource = null; //clear this way as well
cboSubCategories.DataBind(); //!!! required to complete clearing
//rebind
/* set select parameted for the datasource for second drop down */
ObjectDataSourceSubCategories.SelectParameters[0].DefaultValue = ((
DropDownList)sender).SelectedValue; ObjectDataSourceSubCategories.Select();
cboSubCategories.DataSource = ObjectDataSourceSubCategories;
cboSubCategories.DataBind();
Also I wanted to have "(None)" as a first choice so I put that in OnDataBound event handler of the second dropdown
DropDownList cboSubCategories = (DropDownList)sender;
cboSubCategories.Items.Insert(0,
new ListItem("(None)", "-1"));