有关comboBox的问题
大家帮我一下,一个简单的对表操作的问题
两个comboBox,一个是comboBox2,一个是comboBox3,这两个都是从一个表中Items.Add数组得到的内容,现在有一个功能要实现,就是,在选中了comboBox2的时候,要通过选中的内容来确定comboBox3的内容,比如说都是对Course表进行操作,其中comboBox2列出的是表中的course_id字段,这个字段在表中内容唯一且不重复,然后通过选中comboBox2的内容,也就是course_id,来使comboBox3显示出该表中选中的Course_id所在的记录的name字段内容。我是这样写的代码,但实现不了。
Form5中:
private void comboBox2_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(comboBox2.Text!="")
{
database kc=new database();
string kcstr=kc.kcname(comboBox2.Text.Trim());
comboBox3.Text=kcstr.ToString();
}
}
然后kcname方法这样定义:
public string kcname(string kcn)
{
string sql="select * from Course where Course_ID='"+ kcn +"'";
dt=new DataSet();
conn=new OleDbConnection(connstring);
conn.Open();
da=new OleDbDataAdapter(sql,conn);
da.Fill(dt);
return dt.Tables[0].Rows[0]["Name"].ToString();
}
我感觉没错呀……
其中connstring是连接数据库的字符串:@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=……
希望大家指点一下,非常感谢。
问题点数:20、回复次数:2Top
1 楼wuyi8128(六)回复于 2006-05-03 12:07:39 得分 0
// 不用那么做
// 不需要 comboBox2_SelectedIndexChanged事件处理
先查出整个表(table),以下table就是你查出的内容.
comboBox2.DataSource = table;
comboBox2.DisplayMember = "Course_ID";
comboBox3.DataSource = table;
comboBox3.DisplayMember = "Name";
// 这样就会自动同步的.
// 你的那两个方法都不要.Top
2 楼webwalker(Jason.Xu@BenQ.com)回复于 2006-05-03 12:59:18 得分 0
不错Top




