1.简介

DataGridView空间是我们经常使用的显示数据的控件,它有极高的可配置性和可扩展性。

2.显示数据

DataGridView显示数据一般我们经常使用的有两种方法,一种是直接设置DataSoure属性就能够绑定数据。此方法不须要写不论什么代码操作比較简单,可是它显示出来的是整张表的数据。假设整一表数据比較多,并且我们并不须要全部的数据的情况下,我们就应该考虑另外一种方法了。通过写代码连接数据库并从数据库中读取数据,最后将返回的数据传给DataGridView。这样的方法貌似比較复杂,可是它仅仅显示我们须要的数据,相比成千上万的数据,效率法尔明显提高了。

以下就简介一下这两种方法:

第一种通过属性设置

首先在属性窗体找到DataSource属性,点击下拉框。第一次用,曾经每加入过的话,点击加入数据源

 
                             

选择数据类型,下一步,选择数据集,下一步

 
       

选择数据连接,点新建连接

在加入链接对话框中更改数据源(我用的SQL Server数据库),点击下拉框选择server名称(点号默觉得自己的server)。然后在以下连接到数据处选择数据库,測试链接通过的话,点确定。这时又回到数据配置向导,点下一步就能够在数据库中选择你要显示的表了。

 
 

加入完毕后,执行窗口数据就显示出来了

另外一种方法就是通过写代码载入数据

<span style="font-family:KaiTi_GB2312;font-size:18px;">    '定义一个函数查找规定日期内的收取金额
Public Function check_money(ByVal tstRecharge As Model.RechargeModel) As DataTable
Dim strSQL As String = "select * from Recharge_info where rechargeDateTime between @startdatetime and @enddatetime"
Dim params As SqlParameter() = {New SqlParameter("@startdatetime", tstRecharge.start_datetime), New SqlParameter("@enddatetime", tstRecharge.end_datetime)}
Dim helper As New SqlHelper
Dim dat = helper.GetDataTable(strSQL, CommandType.Text, params) '调用sqlhelper
Return dat '返回查到的数据表
End Function</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;"> Dim db As New DAL.CkeckMoneyDAL '定义一个D层对象,用来调用D层函数

    '定义一个函数,用来检查D层查找金额返回的数据
Public Function check_return(model As Model.RechargeModel) As DataTable
Dim dat = db.check_money(model)
If dat.Rows.Count = 0 Then '检查D层返回的数据表中是否有数据
Return Nothing
Else
Return dat
End If
End Function</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;"> Dim thisRecharge As New Model.RechargeModel '定义一个实体层对象,用来接收起止时间
thisRecharge.start_datetime = DateTimePicker1.Text
thisRecharge.end_datetime = DateTimePicker2.Text
Dim ub As New BLL.CheckMoneyBLL '定义一个B层对象,用来调用B层函数
If ub.check_return(thisRecharge) Is Nothing Then
MsgBox("该时间段内没有记录,请又一次设置时间段!", MsgBoxStyle.Exclamation, vbOKOnly)
Else
dvwTitles.DataSource = ub.check_return(thisRecharge) '把查到的数据传给datagridview
End If</span>

显示结果:

两种方法各有优缺点,我们须要依据自己的实际情况选择使用。当我们仅仅须要显示整张表的数据或者表中数据不多的情况下,第一种方法最简单只是来,不须要写不论什么代码。假设我们希望数据有选择性的显示,比方上图中就仅仅显示6月18日到6月20日期间的数据,通过写代码尽管貌似繁琐,可是显示结果一目了然,避免了我们从大量数据中寻找我们须要的数据,大大提高了效率。

学习的道路上没有捷径,可是总有那么一条会更适合你……

最新文章

  1. REDHAT一总复习1 ssh配置 禁用root用户SSH连接
  2. linux常用命令(四)
  3. 通过 SQL Server 视图访问另一个数据库服务器表的方法
  4. JQuery好用的日期选择控件 DatePicker
  5. SPOJ LIS2 Another Longest Increasing Subsequence Problem 三维偏序最长链 CDQ分治
  6. Android之帧动画
  7. 使用Microsoft.AspNetCore.TestHost进行完整的功能测试
  8. vue的基础知识
  9. scrapy python2升级python3遇到的坑
  10. Spring MVC 的工作原理
  11. c语言基本数据类型及存储方式
  12. 二分求LIS并打印结果
  13. Git的原理简介和常用命令
  14. app token session rsp
  15. python——脚本和print
  16. SPOJ 3267. D-query (主席树,查询区间有多少个不相同的数)
  17. python接口自动化4-绕过验证码登录(cookie)
  18. 算法笔记_186:历届试题 高僧斗法(Java)
  19. ubuntu docker方式部署docker registry v2
  20. 玄虚出品Delphi教程的前言 good

热门文章

  1. 开发测试时给 Kafka 发消息的 UI 发送器――Mikasa
  2. 遍历指定包名下所有的类(支持jar)(转)
  3. HDU 4022 Bombing (map + multiset)
  4. 在ireport中使用checkbox
  5. hdu2159(二维完全背包)
  6. xcode target
  7. Failed to load libGL.so问题解决
  8. JS类定义方式
  9. Linux如何查找大文件或目录总结及在全部目录中查找
  10. jps查看java进程中哪个线程在消耗系统资源