comboxbox控件,为其 selectedvalue赋值,如果combobox并不存在这个值,如何处理呢?将一个 datatable 作为combobox控件的 datasource,
combobox控件显示值了。我想用代码控制这个组合框显示设定的项目,所以用 combobox1.selectedvalue="01";这种方式,但是有个问题,如果这个组合框存在这个 "01" 的 selectedvlaue 值,这样没有问题,但是如果
组合框并不存在这个值,程序也不报错。
但是下次再取 selectedvalue 属性时就会报错。如何解决这个问题呢?再注:假如combobox控件当前不存在 "99"这个 selectedvalue
但是我执行了
combobox1.selectedvalue="99";此时程序并不会引发异常。
但是下次执行:
string str;
str=combobox1.selectedvalue.tostring();
就会报错,我如何处理这个问题呢?

解决方案 »

  1.   

    在datasource上增加你的这个值。
      

  2.   

    是因为selectedvalue 是不是 为null 了
    判断是否是null
      

  3.   

    不能增加。
    我想在为 combobox控件的 selectedvalue 属性赋值时,先判断控件有没有这个值。
    但是如何判断呢?
      

  4.   


    可以遍历 combox的 item 之后 看下有没有值
      

  5.   

    会按照缺省的方式处理,即combobox不选中任何一个条目。
      

  6.   

    你为combobox选择不存在的一个值,那么不会报异常是正常的。
    如果你使用了一个不存在的值,那么铁定报错,但是报错是报在tostring()这个函数上,因为null.tostring铁定出错。如果你咬判断是否有值,那么最好的办法就是combobox.selectitem == null来判断,item是null就表示是空值。
      

  7.   

    100多条项目,可以下拉取值,但是我也提供了,输入编码定位的方法.
    如:001,天津
    002,北京 
    003,上海我输入002
    定位到北京.但是,如何操作员输入 aaa 呢,我要考虑容错性.
      

  8.   

    把100多条项目放入缓存(如hashtable),输入aaa,比较一下缓存是否存在编码,存在就给combobox赋值,不存在则提示或其它处理