DataGridView控件---绑定数据方法
2013-07-29 17:31
330 查看
DataGridView控件是在windows应用程中显示数据最好的方式,它只需要几行简短的代码就可以把数据显示给用户,同时又支持增、删、改操作。今天将自己总结的增加数据的方法总结分享给大家
关于DataGridView的一些属性介绍大家可以参照百度百科,我在这里主要写如何用两种方法去实现绑定数据
1.非绑定模式
所谓的非绑定模式就是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)
'添加第二行
Dim row1 As String() = {"李四", "男"}
DataGridView1.Rows.Add(row1)
另外对于添加标题列也可以不用代码添加,而是通过手动添加列
操作步骤如下
1,点击DataGridView控件
就可以看到一个小三角,点击小三角弹出菜单
选择编辑列如下所示
编辑列:
同时也可以修改列的属性
2
绑定模式
将存在的数据绑定到控件上,
我是将数据库表中的数据绑定到控件上 ,我将用户表中的用户名,密码,开户人信息绑定到控件上,具体步骤如下
我在在窗体的Load
事件下来完成这些步骤的
参考代码:
'连接数据库
Dim cnStr As String = "PersistSecurity Info=False;User ID=sa;Initial Catalog=studentSystem;DataSource=192.168.24.74;pwd=123456"
Dim cn As SqlConnection = NewSqlConnection(cnStr)
cn.Open() '打开数据库
Dim sql AsString = "select U_ID as 用户名 ,U_passwordas 密码,U_head as 开户人 from T_user"
Dim cmd As SqlCommand = NewSqlCommand(sql, cn)
Dim da As SqlDataAdapter = NewSqlDataAdapter()
da.SelectCommand = cmd
Dim ds As DataSet = New DataSet()
da.Fill(ds,"T_user") '填充数据集
'绑定数据集
DataGridView1.DataSource = ds
DataGridView1.DataMember ="T_user"
运行效果图
此中运行效果和非绑定模式下显示的相同,但方法却截然不同,而我在添加标题列时是利用的SQL语句实现的
Dim sql As String ="select U_ID as
用户名 ,U_password as
密码,U_head as 开户人 from T_user"
对于这一部分,我们也可以通过不同的代码来实现它
具体代码和上述区别在于 SQL语句处Dim sql As String = "select
U_ID ,U_password,U_head from T_user"
这样写,在绑定好了数据集后在设定标题列
代码如下:
'设置标题第0列
DataGridView1.Columns(0).HeaderText = "用户名"
'冻结标题 也就是标题不会随着数据的移动而消失
DataGridView1.Columns(0).Frozen = True
'添加第一列标题
DataGridView1.Columns(1).HeaderText = "姓名"
DataGridView1.Columns(1).Frozen = True
'设置第二列标题
DataGridView1.Columns(2).HeaderText = "开户人"
DataGridView1.Columns(2).Frozen = True
这样编写和我们在SQL语句中就定义标题列的效果是一样的
以上就是我在利用DataGridView控件绑定数据所尝试的两种方法!关于DataGridView控件的其他使用方法会在下面的博客中发表,欢迎指正
相关文章推荐
- WinForm控件复杂数据绑定常用数据源(对Combobox,DataGridView等控件DataSource赋值的多种方法)
- WinForm控件复杂数据绑定常用数据源(如:Dictionary)(对Combobox,DataGridView等控件DataSource赋值的多种方法)
- WinForm控件复杂数据绑定常用数据源(如:Dictionary)(对Combobox,DataGridView等控件DataSource赋值的多种方法)
- DataGridView控件---绑定数据方法
- [置顶] DataGridView控件---绑定数据方法
- 获取DataGridView绑定BindingSource的数据表,并根据树控件点击进行筛选数据表,下拉控件自定义排序问题初步解决方法,解决了该行属于另一个表的错误提示.
- WinForm控件复杂数据绑定常用数据源(对Combobox,DataGridView等控件DataSource赋值的多种方法)
- DataGridView控件---绑定数据方法1
- 在数据绑定控件中使用LinkButton传递参数方法
- DataGridView控件——绑定数据
- 当控件被数据绑定时,无法以编程方式向 DataGridView 的行集合中添加行。
- DataGridView控件用法(一)绑定数据-修改列值-序号列-交换列顺序
- VB 当控件被数据绑定时,无法以编程方式向 DataGridView 的行集合中添加行
- c#当控件被数据绑定时,无法以编程方式向 DataGridView 的行集合中添加行
- “当控件被数据绑定时,无法以编程方式向 DataGridView 的行集合中添加行。” 的解决一法
- 转:C# DataGridView控件清空数据出错解决方法
- DataGridView控件用法---绑定数据
- Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。 (FromView)
- C# .NET treeView(树形控件)绑定数据的通用方法 (精)
- ASP.NET数据绑定控件数据项中的服务器控件注册JS方法