游子吟

致力于.Net,致力于企业信息化工程!
Harvest = Hope + Struggle

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  105 随笔 :: 18 文章 :: 539 评论 :: 21万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

  GridView 是Microsoft DataGrid(VS2003版本)的一个替代品,它继承了DataGrid的很多优点,同时也继承了它的很多缺点,我们在方便使用的同时,还是不免会产生一丝遗憾。早在2004年的时候,对DataGrid 进行了二次封装(DotNetGrid 介绍 ),感觉到对我们系统的性能,开发效率方面,提供了很多的帮助。所以我觉得还是有必要把这些功能升级到GridView 中,下面我将一一介绍,我的BNGridView提供了哪些方面的功能。

总览:

      该控件主要包括以下几方面的功能:

1、查询(复杂查询与简单查询相结合)。

2、分页。

3、支持行、列合并。

4、自定义多层表头。

5、支持多条件的合计、汇总。

6、支持行、列固定。

7、支持数据的树状显示。

8、列表数据到导出到Excel文档。

下面,我将一一介绍,如何使用这些功能:

一、查询。

     1、简单查询:如图。

 

   从如图所示的下拉列表框中选中某一项,输入查询关键字,“Go”,即可查询你要的记录。下拉列表框中的项目,默认状态是该GridView 中的列(也可以附加一些与该列表相关的列)。

     2、复杂查询:

  用户可以定义自已的查询方案,以备下次使用。该查询可以任意条件组合,非常灵活、方便。其查询条件的定义,如下图所示:

      本查询列表还支持“本人”“本月”“本年”等特定关键。共享查询就更方便灵活了。

二、分页:

 

三、多条件的合计、汇总;行列合并.

 

四、行、列固定。

 

五、多层表头支持。

 

六、列表数据树形结构展示。

      

 

几点说明:

 一、数据绑定,支持两种方式的数据绑定:

1:DataBind(DataTable dt),即支持传入DataTable 进行绑定,该DataTable将被Cache,页面刷新、翻页、排序等操作,将直接从Cache 获取。

2:SQL 绑定,即传入绑定列表数据的SQL,同时指定连接DB的ConnectionString 。控件在获取数据源时,将会解析该SQL语句,根据每页的记录数,当前页码,对SQL进行重新组合,然后交由DB执行。SQL分页的策略为:

Code

 

经几年来的实践检验,这样的分页效率是相当高的,现在我们的业务系统,每个表几百数据,而且是三、四张表关联查询,一点问题都没有,值得信赖。

二、导出到Excel ,这是一种非种成熟的技术,不值得一提。但是最近有用户提出,希望能导出 PDF 文档,不知道该如何处理,还望各位网友不吝赐教。

三、BNGridView 的使用相当方便,基本沿用了原始GridView的使用模式,只是在传递数据源绑定时有所不同,例如: 

使用范例

 

四、BNGridView 的使用范例及源码,我还没有整理出来,最近几天将会完成,如果哪位网友有参考的必要,请留言。

  

源码下载 BNGridView

 

posted on   巴山游子  阅读(4497)  评论(123编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示