问题描述
说明:我在程序中设置了一个ComboBox控件,希望连接sql数据库后,在下拉列表中显示所有数据库,不知道该如何实现,望大家能指点迷津!感谢!
解决方案
解决方案二:
for(inti=0;i<ds.Tables[0].Rows.Count;i++){this.clb.Items.Add(ds.Tables[0].Rows[i]["name"].ToString());}
解决方案三:
数据库列表保存在master数据库中的sysdatabases表中,只要select*fromsysdatabases就好了绑定就和普通的一样
解决方案四:
..........连接数据库.............Stringchecksql="selectnamefromsysdatabases";conn.Open();System.Data.SqlClient.SqlDataAdaptersqlda;DataSetdt=newDataSet();sqlda=newSqlDataAdapter(checksql,conn);sqlda.Fill(dt,"sysdatabases");编译提示:对象名'sysdatabases'无效。请提示这是为什么?
解决方案五:
this.cmb1.DataSource=ds.Table[0];//数据集中的table绑定this.cmb1.DisplayMember="StorageName";//显示出来的列this.cmb1.ValueMember="StorageGuid";//存储实际的值的列,可与显示出来的列设为一样.
解决方案六:
看来是来晚了~~~~
解决方案七:
ComboBox实现了Ilist你设置数据源为一个实现了Ilist的对象就可以了
解决方案八:
sqlda.Fill(dt,"sysdatabases");这句的意思是给数据集dt中的表"sysdatabases"填充数据,而你的DataSetdt=newDataSet();dt不存在表"sysdatabases"如果没什么必要的话你直接sqlda.Fill(dt),用的时候直接dt.tables[0].rows[i]["name"]就可以得到你要得表名字了。
解决方案九:
Stringchecksql="selectnamefromsysdatabases";conn.Open();System.Data.SqlClient.SqlDataAdaptersqlda;DataSetdt=newDataSet();sqlda=newSqlDataAdapter(checksql,conn);sqlda.Fill(dt,"dt_set");在界面层:for(inti=0;i<ds.Tables[0].Rows.Count;i++){this.clb.Items.Add(ds.Tables["dt_set"].Rows[i]["name"].ToString());}