当前位置 > 首页 > Asp.net

巧解 有一个无效 SelectedValue,因为它不在项目列表中。异常

2007-1-26 19:42:00来源:Asp.net

最近在做用asp.net 2.0 开发,在将绑定数据到DropDownList。时抛出了一个很奇怪的异常。
异常详细信息: System.ArgumentOutOfRangeException: “DropDownList1”有一个无效 SelectedValue,因为它不在项目列表中。

于是查了一下MSDN:DropDownList.SelectedValue 属性:
此属性返回选定的 ListItem 的 Value 属性。通常使用 SelectedValue 属性确定列表控件中选定项的值。如果选定了多个项,则返回索引最小的选定项的值。如果未选定任何项,则返回一个空字符串 ("")。
SelectedValue 属性还可以用于选择列表控件中的某一项,方法是用该项的值设置此属性。如果列表控件中的任何项都不包含指定值,则会引发 System.ArgumentOutOfRangeException。

检查了一下代码。发现自己在没有绑DropDownList1之前就给DropDownList1.SelectedValue ="qqcrazyer";
怪不得出现异常;这里的DropDownList1没有qqcrazyer这一项。
但是这样赋值在做如市、县连动的值改时候很难避免不碰到赋一个列表没有的值,
怎么办呢?

于是又去反射查了一下SelectedValue的实现,找到了解法。

反射代码

  • Fixing the Model Binding issue of ASP.NET MVC 4 and ASP.NET Web API

    2012-12-8 21:01:00

    Introduction: Yesterday when I was checking ASP.NET forums, I found an important iss

  • jquery 控件使用 讲解 连载

    2009-3-29 2:58:00

    摘要: jquery 控件使用 讲解 连载 阅读全文 -------------------------- 新闻: Windows Mobile 7更多屏幕截图泄露 导航: 博客园首页 知

  • visual studio .net 2002 双击类视图中的类或其成员不能正确定位

    2011-11-9 22:28:00

    visual studio .net 2002 双击类视图中的类或其成员不能正确定位。 重启vs,删除临时文件,以至于最终我重装vs都不能解决。十万火急,请求援助。 thanks 叶显山

  • MSDN updates

    2009-4-21 6:33:00

    Scott Hanselman did a great post about some of the new and upcoming features of MSDN that everyone

  • HubbleDotNet 分布式检索算法介绍 (一)

    2011-5-18 9:23:00

    作者:eaglet 转载请注明出处 全文索引的分布式检索粗想想似乎很简单,感觉就是把多个接入点搜索出来的数据做个合并排序就可以,但如果想要做好,满足商业应用要求,这里面涉及到很多算法优化的问

  • WebService开发(二) 如何使用Soap扩展

    2007-4-11 2:07:00

    摘要: 这篇随笔里我们要利用SOAP扩展做一下对利用Soap Header校验用户身份的封装和解决网友提出的明文传输身份信息不安全的问题。 阅读全文 David.Fan 2007-04-

  • 非程序员的GNU Emacs使用心得......Shell Mode 第11集 窗口也能 undo 吗???

    2010-8-12 12:54:00

    作者: 小和平鸽 发表于 2010-08-12 12:42 原文链接 阅读: 5 评论: 1 这个就是我自己通常的工作桌面。或者说这就是我通常工作中的 Emacs。 想看大图的,

  • .Net 4 TPL初体验

    2012-5-25 14:21:00

    公司新防伪平台需要高效生成14位不重复、离散度高的全数字的防伪码,要求可以不依赖数据库排除重复码,要求快速反算(1秒以内),先用老方法单线程实现了;但是效率比较低每秒最快18个(本机配置是:inte

  • MbUnit 2.4 beta1

    2007-3-7 7:46:00

    Cut to the sound of beachboys is the beta1 release of MbUnit 2.4. New features in this drop. T

  • xml 传送数据总结

    2007-6-29 17:33:00

    1.js文件 1 function SendHttp(URL,XmlContent) 2 { 3 var xmlhttp = new ActiveXObjec