winform控件 datagridview分页功能

主要实现页面跳转、动态改变每页显示行数、返回首末页、上下页功能,效果图如下:

主代码如下:

namespace Paging
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private int currentPageCount;//记录当前页行数private int pageCount;//记录总页数private int currentCount;//记录当前页数private void Form1_Load(object sender, EventArgs e){currentPageCount = Convert.ToInt32(txt_lines.Text);string sql = "select*from StudentInfo";DataSet ds = ConnectClass.ReturnDataSet(sql);Paging(ds);}private void Paging(DataSet ds){int pageLine = 0;int count = ds.Tables[0].Rows.Count;//总行数lb_recordNum.Text = count.ToString();pageCount = Convert.ToInt32(Math.Ceiling(Convert.ToDouble(count) / currentPageCount));if (count > currentPageCount)pageLine = currentPageCount;elsepageLine = count;this.currentCount = 1;Binds();}private void btn_Click(object sender, EventArgs e){Button btn = sender as Button;string tag = btn.Tag.ToString();//获取首页、上一页、下一页、末页的tag属性值switch (tag){case "0"://首页this.currentCount = 1;break;case "1"://上一页this.currentCount -= 1;break;case "2"://下一页this.currentCount += 1;break;case "3"://末页this.currentCount = this.pageCount;break;}Binds();}private void Binds(){string sql = string.Empty;if (this.currentCount.Equals(0)){currentCount = 1;MessageBox.Show("当前已是首页");}else if (this.currentCount.Equals(pageCount + 1)){this.currentCount = this.pageCount;MessageBox.Show("当前已是末页");}else if (this.currentCount > 0 && this.currentCount < pageCount + 1){sql = ConnectClass.ReturnSelectSql(currentPageCount, (currentCount - 1) * currentPageCount);DataSet ds = ConnectClass.ReturnDataSet(sql);this.dataGridView1.DataSource = ds.Tables[0];lb_page.Text = this.currentCount + " / " + pageCount;}}//跳转页面private void btn_jump_Click(object sender, EventArgs e){if (txt_page.Text == "")return;this.currentCount = Convert.ToInt32(txt_page.Text);if (this.currentCount > 0 && this.currentCount < pageCount + 1)Binds();}//设置每行页数private void txt_lines_Leave(object sender, EventArgs e){Form1_Load(sender, e);}}
}

ConnectClass类文件代码如下:

namespace Paging
{class ConnectClass{private static string sqlCon = "Data source=.;Initial Catalog=StudentInfo;Integrated Security=True;";private static SqlConnection conn = new SqlConnection(sqlCon);public static DataSet ReturnDataSet(string sql){conn.Open();DataSet ds = new DataSet();SqlDataAdapter sda = new SqlDataAdapter(sql, conn);sda.Fill(ds, "objDataSet");conn.Close();return ds;}public static string ReturnSelectSql(int count,int totalCount){string sql = "select top " + count + " * from StudentInfo where id not in (select top " + totalCount + " id from StudentInfo) ";return sql;}}
}

转载:c#winform控件datagridview实现分页效果_Jakie_Zhan的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/29029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个竖杠在python中代表什么,python中一竖代表什么

大家好&#xff0c;小编来为大家解答以下问题&#xff0c;一个竖杠在python中代表什么&#xff0c;python中一竖代表什么&#xff0c;今天让我们一起来看看吧&#xff01; 维基百科页面是错误的&#xff0c;我已经更正了。|和&不是布尔运算符&#xff0c;即使它们是急切运算…

GODOT游戏引擎简介,包含与unity性能对比测试,以及选型建议

GODOT&#xff0c;是一个免费开源的3D引擎。本文以unity作对比&#xff0c;简述两者区别和选型建议。由于是很久以前写的ppt&#xff0c;技术原因视频和部分章节丢失了。建议当做业务参考。 GODOT目前为止遇到3个比较重大的基于&#xff0c;第一个是oprea的合作奖&#xff0c;…

13-把矩阵看作是对系统的描述

探索矩阵乘法&#xff1a;更深刻的理解与应用视角 &#x1f9e9;&#x1f50d; 引言 &#x1f4d6; 在我们进一步探讨矩阵乘法之前&#xff0c;让我们从不同的角度来理解什么是矩阵&#xff0c;以及如何将矩阵视为一个系统。我们之前已经介绍了矩阵的基本概念和运算&#xff…

手搓 自然语言模型 LLM 拆分em结构设计 网络参数对比

数据 数据集 新的em编码参数表 voc_sizehidden_sizetotaltotal Bmax_lensecondsdays65536512374865920.03749B10242560.2655361024828375040.08284B20485120.5655362048<

公检系统创新:利用校对软件优化法律文书流程

公检系统可以通过利用校对软件来优化法律文书的流程&#xff0c;从而提高效率和准确性。以下是在创新方面利用校对软件的一些方法&#xff1a; 1.自动校对和修正&#xff1a;校对软件可以与公检系统集成&#xff0c;自动检测文书中的拼写、语法和标点符号错误&#xff0c;并提供…

quill 富文本编辑器 @提及

使用插件quill-mention&#xff0c;实现在quill 富文本编辑器使用或#提及用户。 1. 安装 npm install quill-mention --save2. 官方给的示例quill-mention import "quill-mention";const atValues [{ id: 1, value: "Fredrik Sundqvist" },{ id: 2, va…

做嵌入式的门槛高吗,要996吗?

好像但凡编程序的&#xff0c;都有被称为IT工程师的可能&#xff0c;嵌入式&#xff08;软件&#xff09;自然而然在大家的眼中也是IT的范畴。作为IT届的标志性规则&#xff0c;996的确是基本每个互联网软件公司的标配。但是从我经历的几家嵌入式软件公司来看加班是必须有的&am…

【前端 | CSS】5种经典布局

页面布局是样式开发的第一步&#xff0c;也是 CSS 最重要的功能之一。 常用的页面布局&#xff0c;其实就那么几个。下面我会介绍5个经典布局&#xff0c;只要掌握了它们&#xff0c;就能应对绝大多数常规页面。 这几个布局都是自适应的&#xff0c;自动适配桌面设备和移动设备…

智慧防灾:数字孪生技术的应用

最近的“杜苏芮”“卡努”有没有对大家产生影响呢&#xff1f; 频繁发生的台风和其他自然灾害引起了人们对于灾害预防和应对的高度关注。在这种背景下&#xff0c;数字孪生作为一项前沿技术&#xff0c;为灾害预防领域提供了全新的解决方案。本文就带大家了解一下数字孪生技术…

数据要素市场之破四化建四化,拆墙又砌墙

摘要&#xff1a;8月8日&#xff0c;首届贵州科技节“2023数据要素流通关键技术论坛”在贵阳举行。此次论坛由贵州省科学技术协会指导&#xff0c;贵州省计算机学会主办&#xff0c;中国计算机学会贵阳会员活动中心、贵州轻工职业技术学院、贵州电子科技职业学院、贵州省大数据…

网络_每日一学——网络的整体概述

今天我们将继续探讨网络相关的知识。网络是由许多设备互相连接而成的&#xff0c;可以传输数据的系统。通过网络&#xff0c;我们可以远程访问他人的计算机、浏览网页、发送电子邮件等。网络是信息时代中不可或缺的一部分。 在网络中&#xff0c;每个设备都有一个唯一的标识符…

redis Hash类型命令

Redis中的Hash类型有多个常用命令可用于对Hash键进行操作。以下是一些常见的Redis Hash类型命令&#xff1a; HSET&#xff1a;设置Hash字段的值。 它将指定字段与相应的值关联起来&#xff0c;如果字段已经存在&#xff0c;则更新其值&#xff0c;如果字段不存在&#xff0c…

go 不写结构体 动态解析 json,类似于 python 解析 json 为 dict格式

遇到一个问题&#xff0c;需要用 go 请求 api&#xff0c;再返给前端&#xff0c;写结构体有些麻烦&#xff0c;前端可以解析 json 在 Go 语言中&#xff0c;没有像 Python 中的字典&#xff08;dict&#xff09;那样的动态类型来自动解析 JSON 数据。Go 是一种静态类型语言&a…

SSM——环境搭建、产品操作、订单操作

SSM 环境搭建与产品操作 1. 环境准备 1.1 数据库与表结构 1.1.1 创建用户与授权 数据库我们使用 Oracle Oracle 为每个项目创建单独 user &#xff0c; oracle 数据表存放在表空间下&#xff0c;每个用户有独立表空间 创建用户及密码 语法 [ 创建用户 ] &#xff1a; crea…

翻出了我当时学习的笔记来了html

php&#xff1a;高级语言 web应用程序 万维网 浏览器中查看 apache&#xff1a;服务器 mysql&#xff1a;数据库 html 标签 css&#xff1a;层叠样式表 javascript&#xff1a;客户端脚本 js jquery mysql数据库基础 php语法基础 面向对象&#xff08;物件&#xff09; smar…

【tool】ubuntu开机发送IP到QQ邮箱

前言&#xff1a; 因为粗心大意&#xff0c;每次连接服务器都得查看一下ip&#xff0c;固定ip也有不好用的时候呀&#xff0c;所以每次开机都给我发一个吧 代码&#xff1a; # 发送多种类型的邮件 import smtplib from email.mime.multipart import MIMEMultipart from emai…

Python爬虫遇到重定向问题解决办法汇总

在进行Python爬虫任务时&#xff0c;遇到重定向问题是常见的问题之一。重定向是指在发送请求时&#xff0c;服务器会返回一个新的URL&#xff0c;将请求重新定向到该URL。为了帮助您解决这个问题&#xff0c;本文将提供一些实用的解决办法&#xff0c;并给出相关的代码示例&…

leetcode做题笔记53

给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组 是数组中的一个连续部分。 思路一&#xff1a;前缀和 int maxSubArray(int* nums, int numsSize){int sum0,ans0,…

如何设置 Eclipse Git 插件中的默认作者和提交者

1、git提交代码时默认带出Windows的系统用户 2、Window->Preferences->Team->Configuration->Add Entry 3、输入键值对&#xff08;user.name要设置的值&#xff09;&#xff08;user.email要设置的值&#xff09;->应用保存 4、应用后&#xff0c;再次提交代码…

【新】通达OA前台反序列化漏洞分析

0x01 前言 注&#xff1a;本文仅以安全研究为目的&#xff0c;分享对该漏洞的挖掘过程&#xff0c;文中涉及的所有漏洞均已报送给国家单位&#xff0c;请勿用做非法用途。 通达OA作为历史上出现漏洞较多的OA&#xff0c;在经过多轮的迭代之后已经很少前台的RCE漏洞了。一般来说…