DataGridView显示数据的两种方法

2024-05-25 14:08

本文主要是介绍DataGridView显示数据的两种方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.简单介绍

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

2.显示数据

  DataGridView显示数据一般我们常用的有两种方法,一种是直接设置DataSoure属性就可以绑定数据。此方法不需要写任何代码操作比较简单,但是它显示出来的是整张表的数据。如果整一表数据比较多,而且我们并不需要所有的数据的情况下,我们就应该考虑第二种方法了。通过写代码连接数据库并从数据库中读取数据,最后将返回的数据传给DataGridView。这种方法貌似比较复杂,但是它只显示我们需要的数据,相比成千上万的数据,效率法尔明显提高了。

  下面就简单介绍一下这两种方法:

  第一种通过属性设置

  首先在属性窗口找到DataSource属性,点击下拉框。第一次用,以前每添加过的话,点击添加数据源

                                   

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

           

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

  

  在添加链接对话框中更改数据源(我用的SQL Server数据库),点击下拉框选择服务器名称(点号默认为自己的服务器)。然后在下面连接到数据处选择数据库,测试链接通过的话,点确定。这时又回到数据配置向导,点下一步就可以在数据库中选择你要显示的表了。

     

    添加完成后,运行窗体数据就显示出来了

  

  第二种方法就是通过写代码加载数据

  

<span style="font-family:KaiTi_GB2312;font-size:18px;">    '定义一个函数查找规定日期内的收取金额Public Function check_money(ByVal tstRecharge As Model.RechargeModel) As DataTableDim 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 SqlHelperDim dat = helper.GetDataTable(strSQL, CommandType.Text, params) '调用sqlhelperReturn 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 DataTableDim dat = db.check_money(model)If dat.Rows.Count = 0 Then '检查D层返回的数据表中是否有数据Return NothingElseReturn datEnd IfEnd Function</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;"> Dim thisRecharge As New Model.RechargeModel '定义一个实体层对象,用来接收起止时间thisRecharge.start_datetime = DateTimePicker1.TextthisRecharge.end_datetime = DateTimePicker2.TextDim ub As New BLL.CheckMoneyBLL '定义一个B层对象,用来调用B层函数If ub.check_return(thisRecharge) Is Nothing ThenMsgBox("该时间段内没有记录,请重新设置时间段!", MsgBoxStyle.Exclamation, vbOKOnly)ElsedvwTitles.DataSource = ub.check_return(thisRecharge) '把查到的数据传给datagridviewEnd If</span>
  显示结果:

  

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

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

这篇关于DataGridView显示数据的两种方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1001720

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

异构存储(冷热数据分离)

异构存储主要解决不同的数据,存储在不同类型的硬盘中,达到最佳性能的问题。 异构存储Shell操作 (1)查看当前有哪些存储策略可以用 [lytfly@hadoop102 hadoop-3.1.4]$ hdfs storagepolicies -listPolicies (2)为指定路径(数据存储目录)设置指定的存储策略 hdfs storagepolicies -setStoragePo

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问