下拉ComBoboxDataGridView的实现
2010-06-23 19:22 Daniel Xu 阅读(863) 评论(1) 编辑 收藏 举报ComBoboxDataGridView非常实用的一个组件,由Combobox+DataGridView组成,一般情况下点击Combobox下拉箭头你会看到一列值,往往一列值表现出来的结果不是很直观,数据多的情况下,而且相识度大的情况下,就很难辨识出自己想要的数据,出于这个目的在网上搜索了一些类似的代码,先看到的是
地址为http://www.cnblogs.com/CodeAnyWhere/archive/2005/12/13/296461.html,博主给出了例子,下载例子运行不错效果跟我想要的非常类似那就是它了,不过有个问题出来了,博主的数据源是手动添加的代码如下
手动的添加数据源
private DataTable GetDataTable()
{
DataTable dt = new DataTable();
dt.Columns.Add("编号");
dt.Columns.Add("姓名");
dt.Columns.Add("部门");
dt.LoadDataRow(new string[] { "1003", "小张", "a" }, true);
dt.LoadDataRow(new string[] { "1004", "小王", "a" }, true);
dt.LoadDataRow(new string[] {"1005","小丽","a"},true);
return dt;
}
this.编号.DataSource = GetDataTable();
问题出来了,日常的使用过程中数据源都是从数据库获得的,修改成数据源为数据库的
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public DataTable ExcuteSQL(string strSql)
{
string strServer = "server=.;database=123;uid=sa;pwd=123;";
SqlConnection con = new SqlConnection(strServer);
con.Open();
SqlDataAdapter dataAdapter = new SqlDataAdapter(strSql, con);
//DataSet ds = new DataSet();
DataTable dt = new DataTable();
dataAdapter.Fill(dt);
con.Close();
return dt;
}
this.编号.DataSource = ExcuteSQL("select 卡号,描述,姓名 from newtable");
改造工作完成了,运行后点击combobox下拉按钮看到的数据就是从数据库读取的了。
作者:DanielXu
出处:http://www.cnblogs.com/lovetsfuer/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。