VS 2005 中的COMBOBOX 的 SelectedValueChanged 事件

本文介绍如何将课程表内容绑定至COMBOBOX控件并触发选择改变事件以获取课程号的过程。针对代码实现中出现的“输入字符串格式不正确”的错误进行排查,并分享解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我想实现的功能是这样的:将表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没有设置,但是我还是没有搞明白,为什么我在代码里面设置了这两个属性,却没有真正的起作用呢?请朋友们帮我解答,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值