15.12DataGridView分页显示

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace _15._11DataGridView分页显示
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private SqlDataAdapter pagingDA;
        private DataSet pagingDS = new DataSet();
        private int startVal = 0;
        private int valPerPage = 3;//每页显示的内容
        private int totalValNumber;//总条数
        private int currPage = 1;//当前页数

        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: 这行代码将数据加载到表“csharpzxwDataSet.mytable001”中。您可以根据需要移动或删除它。
           // this.mytable001TableAdapter.Fill(this.csharpzxwDataSet.mytable001);
            string constr = "Server=.;uid=sa;pwd=zqyo850619;database=csharpzxw";
            SqlConnection mycon = new SqlConnection(constr);

            try
            {
                mycon.Open();
                string sql = "select * from mytable001";
                pagingDA = new SqlDataAdapter(sql, mycon);
                pagingDA.Fill(pagingDS, "mytable001");
                totalValNumber = pagingDS.Tables[0].Rows.Count;
                int totalPageNumber = (totalValNumber % valPerPage == 0) ? (totalValNumber / valPerPage) : (totalValNumber / valPerPage + 1);//三元运算符求页数,分可以蒸出和不能整除两种情况
                toolStripLabel1.Text = "/" + totalPageNumber;
                loadData();
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                mycon.Close();
            }

        }
        private void loadData()
        {
            currPage = startVal / valPerPage + 1;//当前页
            toolStripTextBox1.Text = currPage.ToString();
            pagingDS.Clear();
            pagingDA.Fill(pagingDS, startVal, valPerPage, "mytable001");
            bindingSource1.DataSource = pagingDS.Tables[0];
            bindingNavigator1.BindingSource = bindingSource1;
            dataGridView1.DataSource = bindingSource1;
        }

        private void bindingNavigator1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            if (e.ClickedItem.Text == "上一页")
            {
                startVal = startVal - valPerPage;
                if (startVal < 0)
                {
                    MessageBox.Show("已经是第一页");
                    startVal = 0;
                    return;
                }
            }
            if (e.ClickedItem.Text == "下一页")
            {
                startVal = startVal + valPerPage;
                if (startVal > totalValNumber)
                {
                    MessageBox.Show("已经是最后一页");
                    startVal = startVal = valPerPage;
                    return;
                }
            }
            loadData();

        }
    }
}
时间: 2024-10-29 10:46:39

15.12DataGridView分页显示的相关文章

PHP+Mysql————数据分页显示技术

通常情况下,一个页面加载大量的数据时,数据不可能同时显示出来.这时候,比较常用的方法就是滚动条和分页.看过电子书的孩子都知道,电子书那么多字,一个手机或pad的屏幕是无法全部显示的,开玩笑,一本几兆的书就好几百万字,一下子放到几寸的屏幕上,不得亮瞎你的眼.所以我们都是下滑使文字进行滚动或翻页.这篇博文就用来分享一下php的分页技术. 首先获取数据库中某表的数据,输出到网页上,然后再进行分页显示.一句话就讲明白了,但具体怎么分页的,请看代码. <?php header("content-ty

数据资料的分页显示,增删改

题目要求: 1,查找数据库资料,分页显示, 2,可以增.删.改, 3,可以按条件查找. main.php 1 <?php 2 include("./init.inc.php"); 3 4 include("../DBDA.class.php"); 5 $db = new DBDA(); 6 7 include("page.class.php"); 8 9 //$_GET["name"]; 10 //$_GET["

java web 简单的分页显示

题外话:该分页显示是用 “表示层-控制层-DAO层-数据库”的设计思想实现的,有什么需要改进的地方大家提出来,共同学习进步. 思路:首先得在 DAO 对象中提供分页查询的方法,在控制层调用该方法查到指定页的数据,在表示层通过 EL 表达式和 JSTL 将该页数据显示出来. 重点:两个方法:(1)计算总的页数. (2)查询指定页数据. 1.DAO层-数据库 JDBCUtils 类用于打开和关闭数据库,核心代码如下: 1 import java.sql.Connection; 2 import ja

数据库练习——分页显示

调用上一篇的  “分页类” 显示数据库内容 <title>数据分页类</title> </head> <body> <h1>分页显示</h1> <table width="900px" border="1" cellpadding="0" cellspacing="0"> <tr align="center">

Asp 解析 XML并分页显示

Asp 解析 XML并分页显示 Asp 解析 XML并分页显示,示例源码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <hea

分页显示数据----前端(将数据库中的信息分页显示到网页)

在上篇文章中,我们已经完成了分页显示的后台处理,现在进行前端的处理. 期望显示结果: 由于对于不同的项目.不同的数据库数据部分不同,所以我们将分页部分提取出来,单独建立jsp页面: 1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <%@ taglib prefix="c"

php中关于 left join 的分页显示

/* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname='',$sTime='',$eTime=''){ $sql = 'select Count(*) from `admin_business` as b left join `web_user` as w on b.b_mid = w.id left join `admin_advisor` as v

MYSQL复杂查询(条件不定查询+按降序/升序分页显示)

使用mybatis框架后,mybatis-generator可以为我们自动生成操作数据库(MYSQL)的*Mapper.xml文件+模型类+*Mapper接口,但是,mybatis-generator并不能为我们生成所有方法,例如根据输入的不定条件来查询数据,又比如按照某个参数升序或者降序并分页显示所查到的数据,下面介绍一下条件不定查询及按降序/升序分页显示的方法. 1.按条件不定查询(项目基于SSMM(spring+springmvc+maven+mybatis)框架整合的代码进行举例) 在B

查询内容在网页里面分页显示+跳页查看

因为还处于学习阶段,所以用的框架是Struts2+Hibernate, 查询的方法是Hibernate自带的方法,因为数据较少的缘故,所以设定每页显示两条数据来实现 1.dao 层Hibernate的分页方法 1 package com.hanqi.dao; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 import org.hibernate.Session; 7 import org.hibernate.Sessio