在Datagridview中添加datagridviewComboBox列并显示下拉列表
在DataGridView中自动的添加Column。

private void button_autoAddColumn_Click(object sender, EventArgs e)
{
try
{
/*链接数据库并获取数据*/
string connString = "Server=.;Database=testDatabase;Integrated Security=SSPI";
SqlConnection conn = new SqlConnection(connString);
string queryString = "select forename,surname,ISNULL(reportsto,0) as reprotsTo from imployee";
SqlDataAdapter da = new SqlDataAdapter(queryString, conn);
DataSet ds = new DataSet();
da.Fill(ds, "imployee");
queryString = "select forename+' '+surname as name ,reportsto from imployee union select '0','(None)'";
da = new SqlDataAdapter(queryString, conn);
da.Fill(ds, "manager"); /**参照C#高级编程书的Datagridview使用combobox列的代码编写**/ SetupColumn(ds);//调用添加Datagridview列的函数
this.dataGridView2.RowTemplate.Height = ; this.dataGridView2.AutoGenerateColumns = false;//要想动态添加Column,就必须设置为true
this.dataGridView2.DataSource = ds.Tables["imployee"];
}
catch (SqlException exp)
{
MessageBox.Show("数据库链接读取数据过程中出现错误:" + exp.Message);
} } private void SetupColumn(DataSet ds)
{
DataGridViewTextBoxColumn deptcode = new DataGridViewTextBoxColumn();
deptcode.DataPropertyName = "deptcode";
deptcode.HeaderText = "deptcode";
deptcode.ValueType = typeof(string);
deptcode.Frozen = true;
this.dataGridView2.Columns.Add(deptcode); DataGridViewTextBoxColumn deptname = new DataGridViewTextBoxColumn();
deptname.DataPropertyName = "deptname";
deptname.HeaderText = "deptname";
deptname.ValueType = typeof(string);
deptname.Frozen = true;
this.dataGridView2.Columns.Add(deptname); DataGridViewImageColumn dgvimageColumn = new DataGridViewImageColumn();
dgvimageColumn.DataPropertyName = "dgvimageColumn";
dgvimageColumn.HeaderText = "dgvimageColumn";
dgvimageColumn.ValueType = typeof(Image);
dgvimageColumn.Frozen = true;
this.dataGridView2.Columns.Add(dgvimageColumn); DataGridViewComboBoxColumn dgvComboboxColumn = new DataGridViewComboBoxColumn();
dgvComboboxColumn.DataPropertyName = "dgvComboboxColumn";
dgvComboboxColumn.DataSource = this.getTable().DefaultView;
dgvComboboxColumn.DisplayMember = "forename";
dgvComboboxColumn.ValueMember = "forename";
dgvComboboxColumn.HeaderText = "dgvComboboxColumn";
dgvComboboxColumn.ValueType = typeof(Image); dgvComboboxColumn.Frozen = true; this.dataGridView2.Columns.Add(dgvComboboxColumn); DataGridViewLinkColumn dgvLinkColumn = new DataGridViewLinkColumn();
dgvLinkColumn.DataPropertyName = "dgvLinkColumn";
dgvLinkColumn.HeaderText = "dgvLinkColumn";
dgvLinkColumn.ValueType = typeof(Image);
dgvLinkColumn.Frozen = true;
this.dataGridView2.Columns.Add(dgvLinkColumn); DataGridViewCheckBoxColumn dgvCheckBoxColumn = new DataGridViewCheckBoxColumn();
dgvCheckBoxColumn.DataPropertyName = "CheckBox";
dgvCheckBoxColumn.HeaderText = "CheckBox Column";
dgvCheckBoxColumn.ValueType = typeof(bool);
dgvCheckBoxColumn.Frozen = true;
this.dataGridView2.Columns.Add(dgvCheckBoxColumn); }
private DataTable getTable()
{
string connString = "Server=.;Database=testDatabase;Integrated Security=SSPI";
//string connString = "Server=.;Database=hr;Integrated Security=SSPI";
SqlConnection conn = new SqlConnection(connString);
conn.Open();
string queryString = "select distinct forename from imployee";
DataTable dt = new DataTable();
SqlDataAdapter sqlda = new SqlDataAdapter(queryString, conn);
sqlda.Fill(dt);
return dt; }
在Datagridview中添加datagridviewComboBox列并显示下拉列表的更多相关文章
- DataGridView中添加CheckBox列用于选择行
DataGridView中添加CheckBox列用于选择行 1,编辑DataGridView,添加一列 CheckBox ,Name 赋值为 "select",如下图: 2,取消 ...
- Datagridview中数字格式列 不显示小数点前面的0
用代码设置DataGridView中某列为数字格式,但当小数为0.*的时候,前面的0却不显示.只显示.*. 看网上有说: 调整本地设置,控制面板-区域和语言选项,在弹出框的区域选项卡中,选择自定义,在 ...
- Datagridview 添加checkbox列,并判断Datagridview 中的checkbox列是否被选中
Solution1://In Fill DataGridViewEvent : DataGridViewCheckBoxColumn ChCol = new DataGridViewCheckBoxC ...
- DataGridView 中添加CheckBox和常用处理方式 .
DataGridView 中添加CheckBox和常用处理方式 文章1 转载:http://blog.csdn.net/pinkey1987/article/details/5267934 DataG ...
- 在datagridview中添加button按钮
.Net的DataGridView控件中,提供了一种列的类型,叫 DataGridViewButtonColumn ,这种列类型是展示为一个 按钮,可以给button赋予相应的text,并且,此but ...
- 向SQL Server 现有表中添加新列并添加描述.
注: sql server 2005 及以上支持. 版本估计是不支持(工作环境2005,2008). 工作需要, 需要向SQL Server 现有表中添加新列并添加描述. 从而有个如下存储过程. (先 ...
- c# 在datagridview中添加comboboxcolumn 绑定数据库读取显示数据
datagridview中的comboboxcolumn 从绑定的数据库中读取显示时,只需要注意一点,就是sql语句加个 CStr() 字符串转换函数即可,如下: SELECT CStr(XXX) a ...
- oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)
先列上我的数据库表格: c_date(Date格式) date_type(String格式) 2011-01-01 0 2012-03-07 ...
- 关于Mybatis将查询结果中添加常量列并返回
引言 在使用mybatis的时候,查询一个集合返回给前台页面,在有的时候,我们会添加一个常量字段到对象或者集合中,来标识这个对象属于的类型等等情况,当前台进行再次请求的时候携带此变量进行请求. 但是: ...
随机推荐
- 【Python】批量检测百度权重
挖洞过程中收集了站点后,我一般习惯查看站点的百度权重值,为了方便,写了一个简单的脚本, 至于结果如何显示,看个人需求吧,我这里只是简单的列一下,脚本如下: #coding:utf-8 import r ...
- Shiro入门指引
最近项目中用到Shiro,专门对其研究了一番,颇有收获,以下是笔者最近写的博客,希望对大家入门有所帮助. Shiro入门资源整理 Shiro在SpringBoot中的使用 Shiro源码解析-登录篇 ...
- 微信小程序回到顶部的两种方式
一,使用view形式的回到顶部 <image src='../../img/button-top.png' class='goTop' hidden='{{!floorstatus}}' bin ...
- java 的继承
1 为什么要使用继承? 为了提取两个类中公共的代码,可以使用继承抽取重复性的代码到一个公共类中,这个公共的类称为父类(super class).继承于父类的类称为子类(sub class). java ...
- Python取时间,日期的总结
import datetime from datetime import timedelta now = datetime.datetime.now() #今天 today = now #昨天 yes ...
- ios 得到每周的星期一开始和星期天结束的日期
得到每周 星期一零点(即本周的开始) 和星期天 24 点(即本周的结束和下一周的开始)的时间 NSDate *now = [NSDate date]; NSCalendar *calendar = [ ...
- PHP如何判断对象为空的方法分享
1.网上很多方法分享说用empty()方法判断对象是否为空.empty()的方法介绍:格式:bool empty ( mixed var )功能:检查一个变量是否为空返回值:若变量不存在则返回 TRU ...
- Android OpenGL教程-第二课【转】
第二课 你的第一个多边形: 在第一个教程的基础上,我们添加了一个三角形和一个四边形.也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形. 读完了 ...
- org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.jboss.resteasy.plug
之前做的项目是resteasy的上传,代码没有问题,断点都不进来呢. 我以为可以直接移植到SpringMVC,但是SpringMVC不支持MultipartFormDataInput , 用Multi ...
- 判断img图片是否加载成功
上班之余,记录一下工作中遇到的有趣问题... 事情是这样的...在做一个内嵌H5的app时,有一个“个人名片”页面...要求:如果后台接口有给头像的图片链接就用他们给的,如果没给,前端给个默认头像.. ...