思路:将数据表整体填充至一个Dataset中,探后部分显示(DataaAdapter Fill重载)

DataGridView 控件

 

BindingNavigator 控件

 

Bindingsource 组件

      private int startval = ;//设置起始页
private int valperpage = ;//设置每页要显示的条目数
private int totalvalNumber;//总条数
private int currentpage=;//当前页 private SqlDataAdapter mydpt;
private DataSet mydt; //窗体加载
private void Form1_Load(object sender, EventArgs e)
{
string constr = "server=192.168.100.222;user=sa;pwd=p@ssw1rd;database=pwd1";
string sql = "select * from book";
SqlConnection mycon = new SqlConnection(constr);
mycon.Open();
mydpt = new SqlDataAdapter(sql,mycon);
mydt = new DataSet();
mydpt.Fill(mydt,"book");
mycon.Close(); totalvalNumber = mydt.Tables[].Rows.Count;
//总页数计算
int totalpageNumber = (totalvalNumber % valperpage == ) ? (totalvalNumber / valperpage) : (totalvalNumber / valperpage + );
//设置标签显示
toolStripLabel1.Text ="/"+ totalpageNumber;
LoadData(); }
//创建绑定方法
private void LoadData()
{
currentpage = startval / valperpage + ;
toolStripTextBox1.Text = currentpage.ToString();
mydt.Clear();
mydpt.Fill(mydt,startval,valperpage,"book");//SQLdateadapt 填充的方法重载(填充的dataset,起始页,每页多少条目,哪个表)
bindingSource1.DataSource=mydt.Tables[];//组件bindingsource 等于dataset.表book填充。
bindingNavigator1.BindingSource = bindingSource1;//bindingnavigaor导航.bindingsource=bindingsource
dataGridView1.DataSource = bindingSource1; } //添加事件 导航集合选择后
private void bindingNavigator1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
//如果事件集合的文本等于上一页
if (e.ClickedItem.Text=="上一页")
{
startval = startval - valperpage;
if (startval<)
{
MessageBox.Show("已经是第一页");
startval = ;
return;
} }
if (e.ClickedItem.Text=="下一页")
{
startval = startval + valperpage;
if (startval>totalvalNumber)
{
MessageBox.Show("已经是最后一页");
startval = startval - valperpage;
return;
}
}
LoadData(); } //这样写也是可以的!!!!!!!!!!!!!!!!!!!!!!!
//点击上一页事件
private void toolStripButton1_Click(object sender, EventArgs e)
{
startval = startval - valperpage;
if (startval<)
{
MessageBox.Show("已经是第一页");
startval = ;
return;
}
LoadData();
}
//点击下一页事件
private void toolStripButton2_Click(object sender, EventArgs e)
{
startval = startval + valperpage;
if (startval>totalvalNumber)
{
MessageBox.Show("已经是最后一页");
startval = startval - valperpage;
return;
}
LoadData();
}

DateGridView 分页显示的更多相关文章

  1. C#关于分页显示

    ---<PS:本人菜鸟,大手子还请高台贵手> 以下是我今天在做分页时所遇到的一个分页显示问题,使用拼写SQL的方式写的,同类型可参考哦~ ------------------------- ...

  2. 多页的TIFF图片在aspx页面分页显示

    一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...

  3. asp.net gridview 分页显示不出来的问题

    使用gridview分页显示,在点击第二页的时候显示空白,无数据. 原因是页面刷新,绑定datatable未执行 解决方法: 1.将datatable设置为静态 2.在OnPageIndexChang ...

  4. SSRS(rdl报表)分页显示表头和对表头的冻结处理

    基础环境 最近在公司做西门子某系统的二次开发,需要用到SQLServer Reporting Services(SSRS).我们用的SQL版本是SQLServer 2008 R2:在设计报表时,表格用 ...

  5. JSP分页显示实例(基于Bootstrap)

    首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...

  6. scroll事件实现监控滚动条并分页显示示例(zepto.js)

    scroll事件实现监控滚动条并分页显示示例(zepto.js  ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...

  7. 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示

    /// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...

  8. php中关于 left join 的分页显示

    /* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname=' ...

  9. 《ASP.NET1200例》<asp:DataList>分页显示图片

    aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...

随机推荐

  1. 瞄一眼,带你走进SparkSQL的世界

    本文由  网易云发布. 作者:范欣欣(本篇文章仅限知乎内部分享,如需转载,请取得作者同意授权.) 最近想来,大数据相关技术与传统型数据库技术很多都是相互融合.互相借鉴的.传统型数据库强势在于其久经考验 ...

  2. 微信小程序—相对路径和绝对路径

    一.绝对路径: 以“/”开头代表根目录, /ada/like/index 二.相对路径 ../../ada/like/index 或者: ada/like/index

  3. 高性能缓存服务器Varnish

    一.Varnish概述 Varnish是一款高性能的.开源的反向代理服务器和缓存服务器,计算机系统的除了有内存外,还有CPU的L1.L2,甚至L3级别的缓存,Varnish的设计架构就是利用操作系统的 ...

  4. 总结day24 ---- socket ,struct 的学习

    前情提要 一:套接字  socket()  1:三次握手 1:客户端像服务端链接,   (第一次握手) 2:服务端收到请求,告诉客户端服务端收到了内容    (第二次握手1) 3:服务端像客户端连接, ...

  5. 利用python 学习数据分析 (学习二)

    内容学习自: Python for Data Analysis, 2nd Edition         就是这本 纯英文学的很累,对不对取决于百度翻译了 前情提要: 各种方法贴: https://w ...

  6. float数据在内存中存储方式

    float类型数字在计算机中用4个字节存储.遵循IEEE-754格式标准: 一个浮点数有3部分组成: 符号部分,0 表示正,1表示负. 底数部分 使用二进制数来表示此浮点数的实际值,底数部分实际是占用 ...

  7. Java NIO学习与记录(四): SocketChannel与BIO服务器

    SocketChannel与BIO服务器 SocketChannel可以创建连接TCP服务的客户端,用于为服务发送数据,SocketChannel的写操作和连接操作在非阻塞模式下不会发生阻塞,这篇文章 ...

  8. python 报错: Dog() takes no arguments

    后来上网找了一下.发现是 构造方法 __init__ 两边的下划线是双下划线,我写的是单下划线. 读书不认真,该打. 特此记录.

  9. windows phpinfo上不能找到memcache扩展 php版本5.6

    我的memcache用的我是memcached-win64-1.4.4-14.zip这个版本memcache扩展库下载地址:http://windows.php.net/downloads/pecl/ ...

  10. Java多线程笔记[未更新完]

    最近课上可摸鱼时间较多,因此并发开坑学习 本篇学习自Java多线程编程实战指南 目前进展:刚开坑,处于理解概念阶段 本篇学习自Java多线程编程实战指南 Q.进程和线程的区别 进程Process是程序 ...