一段长时间,都付于公司的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

 

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

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

 

再次运行,错误消失:

Cannot have multiple items selected in a DropDownList

 

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

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

 

相关文章:

  • 2022-12-23
  • 2022-01-17
  • 2021-05-17
  • 2021-05-21
猜你喜欢
  • 2021-08-08
  • 2022-01-13
  • 2022-01-06
  • 2021-08-09
  • 2022-01-07
  • 2022-12-23
  • 2022-03-06
相关资源
相似解决方案