C#控件之DataGridView
- 第一种:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource=ds.Table[0];- 第二种:
DataTable dt=new DataTable();
this.dataGridView1.DataSource=dt;- 第三种:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource = ds.Tables["表名"];- 第四种:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource = ds;
this.dataGridView1.DataMember = "表名";- 第五种:
ArrayList Al = new ArrayList();
this.dataGridView1.DataSource = Al;- 第六种:
Dictionary<string, string> dic = new Dictionary<string, string>();
this.dataGridView1.DataSource = dic;- 第七种:
DataView dv = new DataView();
this.dataGridView1.DataSource = dv;- 第八种:
this.dataGridVi.DataSource = new BindingList<Object>(List<Object>);- 非绑定模式 (ref:http://blog.csdn.net/yudandan10/article/details/9618763)
所谓的非绑定模式就是dataGridView控件显示的数据不是来自于绑定的数据源,而是可以通过代码手动将数据填充到DataGridView控件中,这样就为DataGridView控件增加了很大的灵活性
在此我们先来了解一下DataGridView控件有多种类型的列 ,而这些类型都是间接的或直接的继承了DataGridViewColumns() 类 ,下面是我们能够长用的几种类型
类 |
说明 |
DataGridViewTextBoxColumn |
与基于文本的值一起使用,在绑定到数字和字符串类型的值时自动生成 |
DataGridViewCheckBoxColumn |
与boolean和checkState值一起使用,在绑定到这些类型的值时自动生成 |
DataGridViewImageColumn |
用于显示图像,在绑定到字节数组、Image对象或Icon对象自动生成 |
DataGridViewButtonColumn |
用于在单元格中显示按钮,不会在绑定时自动生成,通常用来做未绑定列 |
DataGridViewComboBoxColumn |
用户在单元格中显示下拉列表,不会在绑定时自动生成,通常收到进行数据绑定 |
DataGridViewLinkColumn |
用于在单元格中显示超链接,不会在绑定时自动生成,通常需要进行手动绑定数据 |
了解了这些看下面的例子
- //'创建一个显示textBox的列()
- Dim col1 As DataGridViewTextBoxColumn =New DataGridViewTextBoxColumn();
- col1.Name = "Name" ;
- col1.HeaderText = "姓名" ;//'设置标题中显示的文本
- Dim col3 As DataGridViewTextBoxColumn = NewDataGridViewTextBoxColumn();
- col3.Name = "sex" ;
- col3.HeaderText = "性别" ;
- //'将新建的列添加到控件中
- DataGridView1.Columns.Add(col1) ;
- DataGridView1.Columns.Add(col3) ;
- //'添加行
- //'创建新行
- Dim row As DataGridViewRow = NewDataGridViewRow();
- row.CreateCells(DataGridView1) ;
- //'设置单元格的值
- row.Cells(0).Value = "张三" ;
- row.Cells(1).Value = "男" ;
- DataGridView1.Rows.Add(row) ;
- //'添加第二行
- im row1 As String() = {"李四", "男"} ;
- DataGridView1.Rows.Add(row1);
- //'创建一个显示textBox的列()
另外对于添加标题列也可以不用代码添加,而是通过手动添加列 操作步骤如下
1,点击DataGridView控件 就可以看到一个小三角,点击小三角弹出菜单 选择编辑列如下所示
编辑列:
同时也可以修改列的属性
参考:
C#控件之DataGridView的更多相关文章
- C#中数据源绑定DataSource以及相关控件(DataGridView)的使用总结
我们在编程过程中,会涉及到表格数据的显示,存储等,就可能涉及到DataGridView,DataSource, DataTable等概念. 下面我就我自己模糊的一些知识点串讲以下: 1)首先我要讲的是 ...
- winform 自定义分页控件 及DataGridview数据绑定
分页效果如上图所示,用到的控件均为基本控件 ,其方法如下 右击项目-添加-新建项 选择用户控件 然后在用户控件中拖入所需要的Label,Button,Text 用户控件全部代码: using Syst ...
- Winform控件之DataGridView数据控件显示问题
近期在做同类的信息记录管理系统时遇到了DataGridView数据控件的显示问题.可能是2015年的上半年没有深入 学习C#开发的原因.这几天又一次搬出来开发,首先遇到的问题就是动态绑定数据显示的问题 ...
- Winform开发常用控件之DataGridView的简单数据绑定——自动绑定
DataGridView控件可谓是Winform开发的重点控件,对于数据的呈现和操作非常方便,DataGridView可谓是既简单又复杂.简单在于其已经集成了很多方法,复杂在于可以使用其实现复杂的数据 ...
- Winform的控件以及DataGridView的一般使用
先上学习测试的一些截图 1:获取多个控件上面的值(checkbox,combobox,textbox,radiobutton) 2:获取到选择行的主键ID的value,方便我们进一步CURD 3:获取 ...
- ToolStripMenuItem控件实现DatagridView行的上下移
/*--------------行上移------------------*/ 1 private void 上移ToolStripMenuItem_Click(object sender, Even ...
- Winform开发常用控件之DataGridView的简单数据绑定——代码绑定DataSet、DataTable、IList、SqlDataReader
前文介绍了Winform为DataGridView提供的数据自动绑定功能,下面介绍一下采用代码的数据绑定 1.用DataSet和DataTable为DataGridView提供数据源 先上代码 pri ...
- 【Winform-自定义控件】 DataGridView多维表头
[datagridview与treeview绑定] treeview 代码: DataTable dtable = new DataTable("Rock") ...
- 【Winform-自定义控件】DataGridView 单元格合并和二维表头
DataGridView单元格合并和二维表头应用: //DataGridView绑定数据 DataTable dt = new DataTable(); dt.Columns.Add("); ...
随机推荐
- spring in action 学习笔记五:@Autowired这个注解如何理解
@Autowired这个注解的意思就是自动装配.他把一个bean对象自动装配到另一个对象中.下面的案例证明了spring的自动装配. 定义一个Sixi类.代码如下: package com.qls.a ...
- Restful 权限的思考
转自:https://cnodejs.org/topic/551802d3687c387d2f5b2906 基于RESTful API 怎么设计用户权限控制? 原文链接:简书 前言 有人说,每个人 ...
- php 计算函数执行时间的方法及获得微妙的方法
// 获得微妙方法 function getMillisecond() { list($s1, $s2) = explode(' ', microtime()); return (float)spri ...
- [BZOJ2152]聪聪可可 点分治/树形dp
2152: 聪聪可可 Time Limit: 3 Sec Memory Limit: 259 MB Submit: 3602 Solved: 1858 [Submit][Status][Discu ...
- 利用System.Net.Mail 发送邮件
我这里只是试了一下发mail的功能,感觉.net自带的发mail是比较全的,还是直接上我的code 参数文章:System.Net.Mail 发送邮件 SMTP协议 using System; usi ...
- 网盘+SVN
1.安装网盘 选择一个国内有名的网盘存储,例如金山网盘.360云盘等,注册账户会默认赠送几G的使用空间,然后下载其对应的网盘客户端管理软件(也可以使用浏览器方式),使用账号登录,就可以上传.管理文件等 ...
- HDU 1114 【完全背包裸题】
Piggy-Bank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- 818D - Multicolored Cars
818D - Multicolored Cars 题意 在 1 到 n 时刻,有 n 量有颜色的车通过,用数字表示颜色,Alice 选择一个颜色A,要求 Bob 选择一个颜色B,使得对于任意时刻 cn ...
- php的function() use($args)用法
使用use返回 aaa aaa.使用函数传参数aaa bbb. use的参数必须是已经存在的,如果没有定义返回Notice: Undefined variable: word ,使用函数参数方式不需要 ...
- Android入门之文件系统操作
Android入门之文件系统操作(二)文件操作相关指令 (转) (一)获取总根 File[] fileList=File.listRoots(); //返回fileList.length为1 // ...