我为ComboBox1添加了一个事件ComboBox1_SelectedIndexChanged(object sender,Event Args e);目的是当在ComboBox1中选择一个对象时可以触发一个动作,现在当选择是这个事件也能起作用;现在的问题是在窗体加载时也触发这个动作,也就是只要打开有这个ComboBox1的窗体时,我还没选择里边的对象时就已经先执行事件里的代码了,请高手指教这是为什么?谢谢

解决方案 »

  1.   

    你可以在form_load里手工绑定事件ComboBox1_SelectedIndexChanged,或者加全局变量判断是否因该触发事件
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
      

  2.   

    在Loding时,有没有类似。.Selected  ,,,,  SelectedId=1,,,,之类的操作
      

  3.   

    你在ComboBox1_SelectedIndexChanged(object sender,Event Args e)事件里判断一下text==""||selectIndex==-1时return;
    这样应该好点吧;
      

  4.   


    绑定后自动选了一个了!也就是SelectedIndex值变了!
      

  5.   

    看看有没有comboBox1.SelectedIndex=0;之类的语句出现在Loding里。不然的话一般不会Loding时加载的。
      

  6.   

    不要指定 comboBox1.SelectedIndex=0 之类的语句 你可以在comboBox1的属性text指定一个数据或者一个提示(请选择之类的话) 这样的话窗体加载的时候就不会触发ComboBox1_SelectedIndexChanged(object sender,Event Args e)事件了
      

  7.   

    你可以在绑定之前 -= _SelectedIndexChanged  绑定后再 += _SelectedIndexChanged
      

  8.   

    加个标志就行了,在load之后再执行需要的代码,lz看看控件的加载和事件执行顺序就清楚了
      

  9.   

    我调试时发现index的值自动为0,所以我加了一个判断语句问题解决了,但是我还是不太明白,这个Index值是什么,它是怎么定义值的,请大家帮忙解释一下,谢谢了
      

  10.   


    请问一下15楼if(!IsPostBack)是什么意思?
      

  11.   

    一、加一个判断if (dataGridView1.CurrentCell != null)看看是否有项被选中
    二、换个事件,用dataGridView1_CellContentClick这个事件,只有当你用鼠标点击一项后才有反应(缺点是键盘更换项无效了)
      

  12.   

    index就是combox的选择项下标啊,默认就是0