zoukankan      html  css  js  c++  java
  • winforms ComboBox的SelectedIndexChanged事件,SelectedIndexChanged事件不执行

    再次用到了ComboBox,需要将一张表中的编号和名称分别绑定到ComboBox的DisplayMember和ValueMember上,这个很容易,直接给它的DataSource赋上查询到的值即可,接着业务的需要我又加了它的SelectedIndexChanged事件,就是当选中的项改变时我需要获取SelectedValue,然后根据这个值(int类型),我需要查询数据库,获取与它关联的一些字段,接着就是无法将无法将DataRow转换为int类型的异常,这个异常以前碰到过,就是给ComboBox数据源赋值的时候就会触发SelectedIndexChanged事件,这时候我们想获取我们使用的SelectedValue其实还没有完整的被绑定到控件上,处理办法http://www.cnblogs.com/Bonizlee/archive/2011/05/24/2054942.html,点击上面的地址,其实我是想说下面的一个问题,SelectedIndexChanged不执行,我是想根据数据库中的记录对一个窗体的状态进行恢复, 重新绑定ComboBox以及根据新的选中的值绑定与此值相关的数据,代码:this.comboBox1.SelectedValue=value;这样写虽然会触发SelectedIndexChanged 事件,可是当重新恢复的那个value值与控件原来的SelectedValue值相等时将不会触发SelectedIndexChanged事件,这时候可以试着做一个判断:

    if(this.comboBox1.SelectedValue==value)

    {

    //此处自己写代码实现数据绑定

    }else

    {

    //触犯事件绑定

    this.comboBox1.SelectedValue=value;

    }

    注:可以把事件处理代码重构成一个方法,当它们相等时掉用一下方法效果一样

  • 相关阅读:
    Java -- JDBC 批处理
    Java -- JDBC mysql读写大数据,文本 和 二进制文件
    Python之操作符优先级
    闲聊之Python的数据类型
    UPX和WinUpack压缩壳的使用和脱法
    改进我们的小游戏
    Python while循环语法
    Python条件分支语法
    python条件分支
    小插曲之变量和字符串
  • 原文地址:https://www.cnblogs.com/kongkonglonglong/p/2565748.html
Copyright © 2011-2022 走看看