在Asp.net中,如果在对DDL控件时行绑定后,再插入一条新的值。如:
this.ddlProjectName.DataSource = PCBO.GetProjectList(ps);//传加IList
this.ddlProjectName.DataTextField = "ProjectName";
this.ddlProjectName.DataValueField = "ProjectGuid";
this.ddlProjectName.DataBind();
this.ddlProjectName.Items.Insert(0,new ListItem("--请选择--",0));
则,在代码解析时,会默认把刚才插入的那条下拉选项设为"已选择"。这时你要想在代码中重新选择默认选择的话,会报错误:不能在 DropDownList 中选择多个项。
关键: 加上 DropDownList ddl = new DropDownList ();
ddl.ClearSelection();
这是网上找的:
自己的总结如下:每次用
if(column_id!=-1)
{
ddl_column.ClearSelection();
ddl_column.Items.FindByValue(column_id.ToString()).Selected = true;
}
都要记得用下clearselection