c#在winform中用DataGridView实现分页效果

public partial class Form11 : Form
{
public Form11()
{
InitializeComponent();
}
private int Inum = 1;
//行号,规定其索引初始值为1
int pagesize = 4;
int allCount
=0;
int pagecount = 0;
private void
Form11_Load(object sender, EventArgs e)
{
using(SqlConnection connection = new
SqlConnection("server=数服务器名称;uid=sa;pwd=sa;database=数据库名"))
{
SqlDataAdapter da = new SqlDataAdapter("select * from
tb_Land", connection);
DataTable dt = new DataTable();
da.Fill(dt);
allCount = dt.Rows.Count;
//获取数据表中记录的个数
pagecount = allCount %
pagesize; //页数 = 总数/显示的行数
//只能显示一页,判断是否是整除
if (pagecount == 0)
{
pagecount =allCount / pagesize;
}
else
{
pagecount
= allCount / pagesize + 1;
}
this.label1.Text = "共" +
pagecount.ToString() + "页";
show(1,4);
//分页显示记录
// this.label2.Text = "当前第" + Inum.ToString() +
"页";
}
}
/// <summary>
///
分页显示数据表中的信息
/// </summary>
/// <param
name="start"></param>
/// <param
name="end"></param>
private void show(int start,int
end)
{
SqlConnection connection = new
SqlConnection("server=服务器名称;uid=sa;pwd=sa;database=数据库名称");
SqlDataAdapter das = new
SqlDataAdapter("select top "+pagesize+" * from
tb_Land where Id not in (select top "+pagesize*(Inum-1)+" Id from
tb_Land)",connection);
//sql语句
DataSet ds = new DataSet();
//显示指定范围的记录
das.Fill(ds,"one");
this.dataGridView1.DataSource =
ds.Tables["one"].DefaultView; //绑定显示数据
ds =
null;
}
//第一页
private void
linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs
e)
{
Inum = 1;
show(Inum,
pagesize);
}
//末尾页
private void
linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs
e)
{
Inum = pagecount;
show(Inum-1,
pagesize);
}
//下一页
private void
linkLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs
e)
{
Inum++;
if (Inum <= pagesize)
//如果没有超出记录行数
{
show(Inum,
pagesize);
}
else
{
MessageBox.Show("现已是最后一页记录");
Inum =
pagecount-1; 更改为 Inum = pagecount;
return;
}
}
//上一页
private void
linkLabel4_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Inum--;
if (Inum >
0) //如果当前不是首记录
{
show(Inum, pagesize); //显示上一页记录
}
else
{
MessageBox.Show("现已是第一页记录");
Inum =
1;
return;
}
}
}
}
c#在winform中用DataGridView实现分页效果的更多相关文章
- winform中DataGridView实现分页功能
WinForm轻松实现自定义分页 (转载) WinForm轻松实现自定义分页 (转载) 转载至http://xuzhihong1987.blog.163.com/blog/static/26731 ...
- winform里dataGridView分页代码,access数据库
winform里dataGridView分页,默认dataGridView是不分页的和webform里不一样,webform中GridView自带自带了分页. 现在c/s的程序很多时候也需要webfo ...
- C# DataGridView自定义分页控件
好些日子不仔细写C#代码了,现在主要是Java项目,C#.Net相关项目不多了,有点手生了,以下代码不足之处望各位提出建议和批评. 近日闲来无事想研究一下自定义控件,虽然之前也看过,那也仅限于皮毛,粗 ...
- WinForm轻松实现自定义分页 (转载)
转载至http://xuzhihong1987.blog.163.com/blog/static/267315872011315114240140/ 以前都是做web开发,最近接触了下WinForm, ...
- thinkphp ajax 无刷新分页效果的实现
思路:先做出传统分页效果,然后重新复制一份Page.class.php类,对它进行修改,把js中的函数传到page类中,把上一页.下一页.首页.尾页.链接页中的url地址改成js控制的函数,模板页面中 ...
- WinForm Control - DataGridView
http://blog.csdn.net/fangxing80/article/details/1561011 .NET 2.0 - WinForm Control - DataGridView 编程 ...
- winfrom dataGridView 自定义分页实现
Winfrom 基本处于忘光的阶段.先需要做个winfrom 的软件.然后自己扩展了DataGridView带分页的控件.废话不多说 上图先 现在一步步实现其效果. 1.添加用户控件 上图即可知道 ...
- 基于Winform框架DataGridView控件的SqlServer数据库查询展示功能的实现
关键词:Winform.DataGridView.SqlServer 一个基于winform框架的C/S软件,主要实现对SqlServer数据库数据表的实时查询. 一.为DataGridView添加数 ...
- winform 取消datagridview第一行选中状态
C# WinForm 取消DataGridView的默认选中Cell 使其不反蓝 http://www.cnblogs.com/freeliver54/archive/2009/02/16/13913 ...
随机推荐
- ZOJ 3209 Treasure Map(精确覆盖)
Treasure Map Time Limit: 2 Seconds Memory Limit: 32768 KB Your boss once had got many copies of ...
- POI官网中的例子
官方指南中的例子: http://poi.apache.org/spreadsheet/quick-guide.html#New+Sheet 这一节 Workbook wb = new HSSFWor ...
- collectionView itemW宽度计算不对
([[UIScreen mainScreen] bounds].size.width - 28) / 4.00 没加括号 collectioView不能正常撑开 用flowLayout 不要用 代理方 ...
- web框架们~Django~Flask~Tornado
1.web框架本质 2.Django 3.Flask 4.Tornado
- Django 的 Form组件
Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 Form类的使用: 1.定义规则: from ...
- Python开发【Tornado】:简介与使用
Tornado框架 简介: Tornado是使用Python编写的一个强大的.可扩展的Web服务器.它在处理严峻的网络流量时表现得足够强健,但却在创建和编写时有着足够的轻量级,并能够被用在大量的应用和 ...
- android 异步线程刷新UI 以及 JSON解析 以及 url get请求
import android.os.Handler; import android.os.Message; 1. Handler mHandler = new Handler() { @Overrid ...
- (转) SpringBoot非官方教程 | 第一篇:构建第一个SpringBoot工程
简介 spring boot 它的设计目的就是为例简化开发,开启了各种自动装配,你不想写各种配置文件,引入相关的依赖就能迅速搭建起一个web工程.它采用的是建立生产就绪的应用程序观点,优先于配置的惯例 ...
- testng日志和报告
TestNG是通过 Listeners 或者 Reporters 生成测试报告. Listeners,即 org.testng.ITestListener 的实现,能够在测试执行过程中发出各种测试结果 ...
- D题:数学题(贪心+二分)
原题大意:原题链接 题解链接 给定两个集合元素,求出两集合间任意两元素相除后得到的新集合中的第k大值 #include<cstdio> #include<algorithm> ...