思路:将数据表整体填充至一个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. Android 获取 content layout

    if (findViewById(android.R.id.content) instanceof ViewGroup) { ViewGroup mainView = ((ViewGroup)find ...

  2. XSS结合JSONP获取网站访客社交账号信息

    我在本地环境搭建了一个WordPress网站,并在该网站中植入JavaScript文件.如果访客在浏览网站时登录了百度账号,该js文件能够利用JSONP获取网站访客的百度账号信息. 具体情况如下: 1 ...

  3. springboot整合websocket后运行测试类报错:javax.websocket.server.ServerContainer not available

    springboot项目添加websocket依赖后运行测试类报如下错误: org.springframework.beans.factory.BeanCreationException: Error ...

  4. BZOJ4012 [HNOI2015]开店 (动态点分治)

    Description 风见幽香有一个好朋友叫八云紫,她们经常一起看星星看月亮从诗词歌赋谈到 人生哲学.最近她们灵机一动,打算在幻想乡开一家小店来做生意赚点钱.这样的 想法当然非常好啦,但是她们也发现 ...

  5. BZOJ 1412--狼和羊的故事(最小割)

    1412: [ZJOI2009]狼和羊的故事 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3316  Solved: 1664[Submit][St ...

  6. Mysql Insert Or Update语法实例

    有的时候会需要写一段insert的sql,如果主键存在,则update:如果主键不存在,则insert.Mysql中提供了这样的用法:ON DUPLICATE KEY UPDATE.下面就看看它是如何 ...

  7. springMVC传递一组对象的接受方式

    受益此大神:https://blog.csdn.net/cgd_8523/article/details/80022331 同时借鉴代码!!!! 我只用了一种方法,就记下这一种 需求:前台存在动态添加 ...

  8. LLDB 和Chisel 使用例子

    打印变量 打印数字 (lldb) p/d 16 16 16 进制格式 (lldb) p/x 16 0x10 2 进制格式 (lldb) p/t 16 0b00000000000000000000000 ...

  9. 如何使用Node爬虫利器Puppteer进行自动化测试

    文:华为云DevCloud 乐少 1.背景 1.1 前端自动化测试较少 前端浏览器众多导致页面兼容性问题比较多,另外界面变化比较快,一个月内可能页面改版两三次,这样导致对前端自动化测试较少,大家也不是 ...

  10. thinkphp5.0 CURL用post请求接口数据

    //测试 请求接口 public function index(){ $arr = array('a'=>'555','b'=>56454564); $data=$this->pos ...