详解DataGridView控件的数据绑定
使用datagridview控件,可以显示和编辑来自多种不同类型的数据源的表格数据。
将数据绑定到datagridview控件非常简单和直观,在大多数情况下,只需设置datasource属性即可。在绑定到包含多个列表或表的数据源时,只需将datamember属性设置为指定要绑定的列表或表的字符串即可。
一、非绑定模式
所谓的非绑定模式就是datagridview控件显示的数据不是来自于绑定的数据源,而是可以通过代码手动将数据填充到datagridview控件中,这样就为datagridview控件增加了很大的灵活性。我们先来了解一下datagridview控件有多种类型的列,而这些类型都是间接的或直接的继承了datagridviewcolumns累,下面是我们能够经常用到的几种类型:
类 | 说明 |
datagridviewtextboxcolumn | 与基于文本的值一起使用,在绑定到数字和字符串类型的值时自动生成 |
datagridviewcheckboxcolumn | 与boolean和checkstate值一起使用,在绑定到这些类型的值时自动生成 |
datagridviewimagecolumn | 用于显示图像,在绑定到字节数组、image对象或icon对象自动生成 |
datagridviewbuttoncolumn | 用于在单元格中显示按钮,不会在绑定时自动生成,通常用来做未绑定列 |
datagridviewcomboboxcolumn | 用户在单元格中显示下拉列表,不会在绑定时自动生成,通常需要手动进行数据绑定 |
datagridviewlinkcolumn | 用于在单元格中显示超链接,不会在绑定时自动生成,通常需要进行手动绑定数据 |
二、绑定模式
就是将已经存在的数据绑定到datagridview控件上。将数据绑定到datagridview控件上非常简单和直观,在大多数情况下,只需设置datasource属性即可。在绑定到包含多个列表或表的数据源时,只需将datamember属性设置为指定要绑定的列表或表的字符串即可。
datagridview控件支持标准windows窗体数据绑定模型,因此该控件将绑定到下表所述的类的实例:
- 1、任何实现ilist接口的类,包括一维数组。
- 2、任何实现ilistsource接口的类,例如datatable和dataset。
- 3、任何实现ibindinglist接口的类,例如bindinglist(of t)类。
- 4、任何实现ibindinglistview接口的类,例如bindingsource类。
通常绑定到bindingsource组件,并将bindingsource组件绑定到其他数据源或使用业务对象填充该组件。bindingsource组件为首选数据源,因为该组件可以绑定到各种数据源,并可以自动解决许多数据绑定问题。
datagridview绑定数据源的几种方式:
第一种:
第二种:
第三种:
第四种:
第五种:
第六种:
第七种:可以排序
示例程序:
下面的程序中,演示上面的各种绑定方式
1、界面设计如下图:
2、代码实现如下:
到此这篇关于datagridview控件数据绑定的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。