在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列并显示下拉列表的更多相关文章

  1. DataGridView中添加CheckBox列用于选择行

    DataGridView中添加CheckBox列用于选择行 1,编辑DataGridView,添加一列 CheckBox ,Name 赋值为 "select",如下图: 2,取消 ...

  2. Datagridview中数字格式列 不显示小数点前面的0

    用代码设置DataGridView中某列为数字格式,但当小数为0.*的时候,前面的0却不显示.只显示.*. 看网上有说: 调整本地设置,控制面板-区域和语言选项,在弹出框的区域选项卡中,选择自定义,在 ...

  3. Datagridview 添加checkbox列,并判断Datagridview 中的checkbox列是否被选中

    Solution1://In Fill DataGridViewEvent : DataGridViewCheckBoxColumn ChCol = new DataGridViewCheckBoxC ...

  4. DataGridView 中添加CheckBox和常用处理方式 .

    DataGridView 中添加CheckBox和常用处理方式 文章1 转载:http://blog.csdn.net/pinkey1987/article/details/5267934 DataG ...

  5. 在datagridview中添加button按钮

    .Net的DataGridView控件中,提供了一种列的类型,叫 DataGridViewButtonColumn ,这种列类型是展示为一个 按钮,可以给button赋予相应的text,并且,此but ...

  6. 向SQL Server 现有表中添加新列并添加描述.

    注: sql server 2005 及以上支持. 版本估计是不支持(工作环境2005,2008). 工作需要, 需要向SQL Server 现有表中添加新列并添加描述. 从而有个如下存储过程. (先 ...

  7. c# 在datagridview中添加comboboxcolumn 绑定数据库读取显示数据

    datagridview中的comboboxcolumn 从绑定的数据库中读取显示时,只需要注意一点,就是sql语句加个 CStr() 字符串转换函数即可,如下: SELECT CStr(XXX) a ...

  8. oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)

    先列上我的数据库表格: c_date(Date格式)     date_type(String格式) 2011-01-01                   0 2012-03-07         ...

  9. 关于Mybatis将查询结果中添加常量列并返回

    引言 在使用mybatis的时候,查询一个集合返回给前台页面,在有的时候,我们会添加一个常量字段到对象或者集合中,来标识这个对象属于的类型等等情况,当前台进行再次请求的时候携带此变量进行请求. 但是: ...

随机推荐

  1. spider_keeper

    一 简介 spider_keeper 是一款开源的spider管理工具,可以方便的进行爬虫的启动,暂停,定时,同时可以查看分布式情况下所有爬虫日志,查看爬虫执行情况等功能. 二 安装 部署 安装环境 ...

  2. sql 简单语法

    1.数据库操作 create database student_info -- 创建数据库 drop database student_info -- 删除数据库 2.表操作 -- 创建表 creat ...

  3. yield return 的使用方法

    以下代码,返回List,list内容为大于60的项 public Form1() { InitializeComponent(); } private void Form1_Load(object s ...

  4. oracle mybatis批量插入,无匹配找默认

    批量插入<insert id="insertIndi" parameterType="java.util.HashMap" useGeneratedKey ...

  5. 解决chrome浏览器对于自动填充的input表单添加的默认的淡黄色背景问题 && 一般的浏览器input和button的高度不一致问题

    解决chrome浏览器对于自动填充的input表单添加的默认的淡黄色背景问题 如果我们把一个表单设置位 autofocus ,这时这个表单在获取焦点后就会产生淡黄色的背景,我们就是使用!importa ...

  6. 如何在cmd窗口里快速且正确打开任意位置路径(各版本windows系统都适合)(图文详解)(博主推荐)

    问题的由来 有时候,我们很苦恼,总是先系统键 + R,然后再去手动敲.尤其对win7系统比较麻烦 解决办法 方法一:复制路径(这点对win10系统做得好,直接可以复制) ,win7系统的话可能还需要设 ...

  7. 026-log4j配置文件模板

    模板一: ### direct log messages to stdout ### log4j.appender.stdout=org.apache.log4j.ConsoleAppender lo ...

  8. Ajax(Asychronous JavaScript and XML)笔记

    1 Ajax简介 1 ajax概念 2 什么是同步?什么是异步? 3 ajax原理 2 JavaScript原生的ajax 1 ajax.html代码 <!DOCTYPE html> &l ...

  9. hibernate抓取问题

    当使用xml配置类之间的关系时 ,例如 学生 班级,多对一关系 /** * 默认情况会发出2条SQL语句,一条取student,一条取Classroom,其实这只需要一条sql             ...

  10. 带双反斜杠的Json数据至单反斜杠的Json数据处理

    假如你光看标题,你只能哦呵呵了!我也看不懂.还是先描述下问题吧.这里是使用微信接口返回了一些数据.因为该串数据包含html标签所以TX是对该串数据进行了编码的.所有的数据是通过Unicode编码的,然 ...