datagridview 绑定数据和非绑定模式

DataGridView控件是在windows应用程中显示数据最好的方式,它只需要几行简短的代码就可以把数据显示给用户,同时又支持增、删、改操作。今天将自己总结的增加数据的方法总结分享给大家

 

   关于DataGridView的一些属性介绍大家可以参照百度百科,我在这里主要写如何用两种方法去实现绑定数据


1.非绑定模式 


所谓的非绑定模式就是dataGridView控件显示的数据不是来自于绑定的数据源,而是可以通过代码手动将数据填充到DataGridView控件中,这样就为DataGridView控件增加了很大的灵活性

在此我们先来了解一下DataGridView控件有多种类型的列 ,而这些类型都是间接的或直接的继承了DataGridViewColumns()     ,下面是我们能够长用的几种类型

说明

DataGridViewTextBoxColumn

与基于文本的值一起使用,在绑定到数字和字符串类型的值时自动生成

DataGridViewCheckBoxColumn

booleancheckState值一起使用,在绑定到这些类型的值时自动生成

DataGridViewImageColumn

用于显示图像,在绑定到字节数组、Image对象或Icon对象自动生成

DataGridViewButtonColumn

用于在单元格中显示按钮,不会在绑定时自动生成,通常用来做未绑定列

DataGridViewComboBoxColumn

用户在单元格中显示下拉列表,不会在绑定时自动生成,通常收到进行数据绑定

DataGridViewLinkColumn

用于在单元格中显示超链接,不会在绑定时自动生成,通常需要进行手动绑定数据

了解了这些看下面的例子 

 

  1.  '创建一个显示textBox的列()  
  2.  Dim col1 As DataGridViewTextBoxColumn =New DataGridViewTextBoxColumn()  
  3.  col1.Name = "Name"  
  4. col1.HeaderText = "姓名" '设置标题中显示的文本  
  5.   
  6. Dim col3 As DataGridViewTextBoxColumn = NewDataGridViewTextBoxColumn()  
  7.  col3.Name = "sex"  
  8. col3.HeaderText = "性别"  
  9.   
  10. '将新建的列添加到控件中  
  11.  DataGridView1.Columns.Add(col1)  
  12.  DataGridView1.Columns.Add(col3)  
  13.   
  14.  '添加行  
  15.  '创建新行   
  16.  Dim row As DataGridViewRow = NewDataGridViewRow()  
  17.  row.CreateCells(DataGridView1)  
  18.  '设置单元格的值  
  19. row.Cells(0).Value = "张三"  
  20. row.Cells(1).Value = "男"  
  21.  DataGridView1.Rows.Add(row)  
  22.  '添加第二行  
  23. im row1 As String() = {"李四""男"}  
  24.  DataGridView1.Rows.Add(row1)  
        '创建一个显示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 事件下来完成这些步骤的 

 

  1. 参考代码:   
  2.   
  3.   '连接数据库  
  4.        Dim cnStr As String = "PersistSecurity Info=False;User ID=sa;Initial Catalog=studentSystem;DataSource=192.168.24.74;pwd=123456"  
  5.        Dim cn As SqlConnection = NewSqlConnection(cnStr)  
  6.        cn.Open() '打开数据库  
  7.        Dim sql AsString = "select U_ID as 用户名 ,U_passwordas 密码,U_head as 开户人 from T_user"  
  8.        Dim cmd As SqlCommand = NewSqlCommand(sql, cn)  
  9.   
  10.        Dim da As SqlDataAdapter = NewSqlDataAdapter()  
  11.        da.SelectCommand = cmd  
  12.   
  13.        Dim ds As DataSet = New DataSet()  
  14.        da.Fill(ds,"T_user") '填充数据集  
  15.        '绑定数据集  
  16.        DataGridView1.DataSource = ds  
  17.        DataGridView1.DataMember ="T_user"  
 参考代码: 
 
   '连接数据库
        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"  这样写,在绑定好了数据集后在设定标题列  代码如下:

 

  1. '设置标题第0列  
  2.       DataGridView1.Columns(0).HeaderText = "用户名"  
  3.        '冻结标题  也就是标题不会随着数据的移动而消失  
  4.        DataGridView1.Columns(0).Frozen = True  
  5.        '添加第一列标题  
  6.       DataGridView1.Columns(1).HeaderText = "姓名"  
  7.        DataGridView1.Columns(1).Frozen = True  
  8.        '设置第二列标题  
  9.       DataGridView1.Columns(2).HeaderText = "开户人"  
  10.        DataGridView1.Columns(2).Frozen = True  
 '设置标题第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控件的其他使用方法会在下面的博客中发表,欢迎指正

 

 

Visual Studio C#中的DataGridView控件,是显示表格数据、以及编辑大量记录的表数据不可或缺的控件,下面就让我来给大家介绍一下DataGridView控件的使用方法。本篇讲解如何使用DataGridView控件绑定数据源(数据库)。

工具/原料

  • Visual Studio 2010 C#

方法/步骤

  1. 1

    1.首先用Visual Studio 2010建立一个WinForm项目,这里不再累述。DataGridView控件在左侧工具箱中。

  2. 2.拖动DataGridView到窗体中,控件呈灰色。

  3. 3.点击DataGridView控件右上角的箭头,开始绑定数据源。

  4. 4.点击箭头,选择“添加数据源”

  5. 5.选择“数据库”,点击下一步。(我这里是SQL Server 2005数据库)

  6. 6.然后选择“数据集”,点击下一步

  7. 7.选择要绑定的数据库。(我这里是:Datebase1)

  8. 8.向导会自动生成连接字符串,默认选择即可。

  9. 9.最后选择要绑定的表或视图(也就是要显示的数据),我选择的是T_Person这个表。接着点击完成。

  10. 10.看到DataGridView控件出现与数据库表相对应的列名,表示绑定成功。

  11. 11.最后运行(调试)此程序,DataGridView控件成功显示数据库表中的数据。

    END
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值