c#常用表格控件dataGridView的分页显示
作者:Yyuanyuxin 发布时间:2022-08-05 13:55:20
标签:c#,datagridview,分页
前言
dataGridView是常用的表格控件,实现分页的方式也有很多种,例如直接使用sql语言,配合存储方式,直接读取某一页的内容,大家如果有兴趣的话,下次整理出来与大家分享,本次,采用另一种方式,即控制表格在接收所有数据后,不再使用滚轮展示,而是通过控制定位行来实现。
使用该方法需要注意的是,大数据量还是不建议使用,因为大数据量会导致表格UI卡顿,还是采用sql查询的方式较为可靠。
下面就简单的使用控件分页的方式与大家分享。
1.让垂直滚动条消失
dataGridView1.ScrollBars =ScrollBars.None;
2.确定每页显示多少行
如果表格是固定大小,此步骤可省略,直接用行数进行下面的操作即可,此方法针对表格大小可调整自适应的时候,通过计算获取能显示的最大行。
int rowCount;//每一页多少行
int maxCount;//所有页数
private void uc_table_Resize(object sender, EventArgs e)
{
this.Invalidate();
rowCount = (dataGridView1.Height - dataGridView1.ColumnHeadersHeight) / dataGridView1.RowTemplate.Height;
maxCount = (int)Math.Ceiling(dataGridView1.Rows.Count / rowCount * 1.0);
}
以上方法是针对表格内容还没有添加,如果表格已经有内容,是无法通过模板(RowTemplate)修改高度的。
那可以使用:
(1)ColumnHeadersHeaderSize属性设为 EnableResizing
(2)ColumnHeadersHeader 的值改为 需要的高度
(3)RowTemplate属性下的Height,把值也设置为 需要的高度
3.控制表格定位
使用FirstDisplayedScrollingRowIndex属性调整显示内容。
dataGridView1.FirstDisplayedScrollingRowIndex = 0;//定位到第一页
dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.Rows.Count- rowCount;//定位到最后一页
例如:
来源:https://blog.csdn.net/Yyuanyuxin/article/details/127445316


猜你喜欢
- public class MainActivity extends Activity { private Handler hand
- Java裁剪压缩PNG图片,透明背景色变黑import java.awt.Graphics2D;import java.awt.Image;
- 1、通过注解ModelAttribute直接映射表单中的参数到POJO。在from中的action写提交的路径,在input的name写参数
- 1. 实现原理将key映射到 2^32 - 1 的空间中,将这个数字的首尾相连,形成一个环计算节点(使用节点名称、编号、IP地址)的hash
- 运行下面这段代码,观察其结果:package com.test;public class HelloB extends HelloA {pu
- /// <summary> /// 队列多线程,T 代表处理的单个类型~&nbs
- 1. Resource Basics(1) Manifest Resources(资源清单)资源在编译期间添加到程序集。如果要将资源嵌入到程
- 一、什么是桥接模式:桥接,顾名思义,就是用来连接两个部分,使得两个部分可以互相通讯,桥接模式的作用就是为被分离的抽象部分和实现部分搭桥。在现
- 介绍装饰者模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,增加对象功能来说,装饰模式比生成子类实现更为灵活。
- Android开发过程中,经常遇到一个项目需要重复的定义相同样式的标题栏,Android相继推出了actionBar, toolBar, 相
- 最近面试时,面试官问了一个列表倒计时效果如何实现,现在记录一下。运行效果图实现思路实现方法主要有两个:1.为每个开始倒计时的item启动一个
- 一、内容实操实现APP门户界面框架设计,至少包含4个tab页,能实现tab页之间的点击切换二、技术使用布局(layouts)和分段(frag
- 前言本文主要给大家介绍了关于Android模仿美团顶部滑动菜单的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。先
- 在SpringAMQP的发送方法中,接收消息的类型是Object,也就是说我们可以发送任意对象类型的消息,SpringAMQP会帮我们序列化
- LiveData概述LiveData 是一种可观察的数据存储器类: 与常规的可观察类不同,LiveData 具有生命周期感知能力,意指它遵循
- 很多时候木马程序会伪装成其他格式的文件上传到网站,最常见的如图片格式。本文就以C#为例讲述C#判断上传文件是否是图片以防止木马上传的方法,具
- SpringBoot多线程进行异步请求的处理近期在协会博客园中,有人发布了博客,系统进行查重的时候由于机器最低配置进行大量计算时需要十秒左右
- 本文实例讲述了C#中的try catch finally用法。分享给大家供大家参考。具体分析如下:try中的程序块是有可能发生错误的程序块,
- 本文实例讲述了JAVA随机打乱数组顺序的方法。分享给大家供大家参考。具体实现方法如下:import java.util.Random;&nb
- 前言当大家使用mybatis作为持久层框架时,在存储和查询数据时,只需要在mapper.xml文件中配置好对应字段的JdbcType和Jav