VS 2005 中的COMBOBOX 的 SelectedValueChanged 事件

来源:岁月联盟 编辑:zhu 时间:2006-12-22

我想实现的功能是这样的:将表T_Course的内容绑定到COMBOBOX控件cb_curcourse,来选择当前的课程,课程名显示在控件中,当选择发生改变的时候,触发cb_curcourse_SelectedValueChanged(object sender, EventArgs e)事件,以获取当前课程的课程号,代码如下:

 #region 当前课程数据绑定
        private void cb_curcourse_BindData()
        {
            string sqltext = "select * from T_Course order by PK_Course";
           
            cb_curcourse.DataSource = DbHelperSQL.Query(sqltext).Tables[0];
            cb_curcourse.DisplayMember = DbHelperSQL.Query(sqltext).Tables[0].Columns[1].ToString();
            cb_curcourse.ValueMember = DbHelperSQL.Query(sqltext).Tables[0].Columns[0].ToString();
               
        }
  #endregion

private void cb_curcourse_SelectedValueChanged(object sender, EventArgs e)
        {
            if (cb_curcourse.SelectedIndex != -1)
                i =Int32.Parse( cb_curcourse.SelectedValue.ToString());//课程号
            
        }

原本按照道理来说,i 就是想得到的课程号,可是当我这样做的时候,红色表示的那行代码报了一个错,“输入字符串的格式不正确”,我是百思不得其解,因为我在另外一个模块里面是这样做的,但是那是很早以前做的,当时具体的操作现在忘记了,我刚才是几乎疯掉了,尝试了很多种调错的方法,还是不行,后来对一前的那个模块的UserConfig.Designer.cs与现在的CurrentCourse.Designer.cs进行了比较,原来有这两个地方不一样:

        cb_curcourse.DisplayMember =“course_name” ;
         cb_curcourse.ValueMember = “pk_course”;

这两个属性在CurrentCourse.Designer.cs没有设置,但是我还是没有搞明白,为什么我在代码里面设置了这两个属性,却没有真正的起作用呢?请朋友们帮我解答,谢谢!