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

l DataGridView 控件

 

l BindingNavigator 控件

 

l 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. 内置函数enumerate()使用

    描述 enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. Python 2.3. 以上版本可用,2. ...

  2. 【ocp-12c】最新Oracle OCP-071考试题库(46题)

    46.(10-4) choose two: Examine the data in the CUST_NAME column of the CUSTOMERS table. CUST_NAME --- ...

  3. “全栈2019”Java异常第十九章:RuntimeException详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...

  4. poj 3133 Manhattan Wiring

    http://poj.org/problem?id=3133 考虑插头 dp 用四进制表示一个插头的状态,0 表示没有插头,2 表示这个插头是连接两个 2 的,3 同理 然后就是大力分类讨论了 这题还 ...

  5. jzoj1792

    #include<bits/stdc++.h> using namespace std; long long a[100010],m,n; int main(){ scanf(" ...

  6. PHP中define()和dirname(__FILE__)

    1,define() 函数定义一个常量.常量类似变量,不同之处在于: (1)在设定以后,常量的值无法更改 (2)常量名不需要开头的美元符号 ($) (3)作用域不影响对常量的访问 (4)常量值只能是字 ...

  7. jquery源码解析:jQuery队列操作queue方法实现的原理

    我们先来看一下jQuery中有关队列操作的方法集: 从上图可以看出,既有静态方法,又有实例方法.queue方法,相当于数组中的push操作.dequeue相当于数组的shift操作.举个例子: fun ...

  8. Class文件分析

    java源码和class文件 源码: package classloader; public class TestCase { private int value; public int test() ...

  9. SAE实践——用SVN命令行同步/提交代码

    1. 同步应用到本地 注:首次使用svn需要输入安全认证密码 在终端输入以下命令 svn co https://svn.sinaapp.com/nyhello nyhello替换为自己的应用名称. 用 ...

  10. 【3】JMicro微服务-服务超时,重试,重试间隔

    如非授权,禁止用于商业用途,转载请注明出处作者:mynewworldyyl 接下来的内容都基于[2]JMicro微服务-Hello World做Demo 微服务中,超时和重试是一个最基本问题下面Dem ...