Cannot have multiple items selected in a DropDownList

一段长时间,都付于公司的Info Syteline ERP维护。

今天终于有时间转至开发程序中来。一直以来,开发都是按步就班使用常用习惯来写程序,这次思考想使用另外一种方式去来开发,就这样,就有新问题出现。
问题是这样的,把选择的值赋给下拉式菜单(DropDownList),如下做绑定:

 this.DropDownListPinZhong.Items.FindByValue(objDataRow["PinZhongId"].ToString()).Selected = true;

 

在运行时,

它显示一个错误Sys.WebForms.PageRequestManagerServerErrorException: Cannot have multiple items selected in a DropDownList.:

 

 从提示中,得到启发,“Cannot have multiple items selected in a DropDownList”,可以在数据绑定前,使用DropDownList的一个方法ClearSelection()来清除选定Item。把代码改为:

this.DropDownListPinZhong.ClearSelection();
this.DropDownListPinZhong.Items.FindByValue(objDataRow["PinZhongId"].ToString()).Selected = true;

 

再次运行,错误消失:

 

后来在网上,发现也有网友出现相同的问题,而且也发现还有另外的解决方法,如下面代码写法:

this.DropDownListPinZhong.SelectedIndex = this.DropDownListPinZhong.Items.IndexOf(this.DropDownListPinZhong.Items.FindByValue(objDataRow["PinZhongId"].ToString()));

 

posted @ 2011-10-07 17:04  Insus.NET  阅读(641)  评论(4编辑  收藏  举报