分页展示

HTML

当前第【<asp:Label ID="Label_Now" runat="server" Text="Label"></asp:Label>】页&nbsp;&nbsp;
            共【<asp:Label ID="Label_Max" runat="server" Text="Label"></asp:Label>】页&nbsp;&nbsp;
            &nbsp;&nbsp;
            <asp:Button ID="btn_first" runat="server" Text="首页" />
            &nbsp;&nbsp;
                        <asp:Button ID="btn_prev" runat="server" Text="上一页" />
            &nbsp;&nbsp;
                        <asp:Button ID="btn_next" runat="server" Text="下一页" />
            &nbsp;&nbsp;
                        <asp:Button ID="btn_lest" runat="server" Text="末页" />
            <asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList>
            <asp:Button ID="Button1" runat="server" Text="跳转" />

    public List<Warehouse> selects(int count,int NowPage)
    {
        List<Warehouse> war = new List<Warehouse>();
        cmd.CommandText = "select top "+count+"  * from Warehouse WHERE ids NOT IN (SELECT TOP "+(NowPage-1)*count+" ids FROM Warehouse)";
        conn.Open();
        SqlDataReader dr = cmd.ExecuteReader();
        if (dr.HasRows)
        {
            while (dr.Read())
            {
                Warehouse ware = new Warehouse();
                ware.ids = Convert.ToInt32(dr[0].ToString());
                ware.name = dr[1].ToString();
                ware.Unit = Convert.ToDouble(dr[2].ToString());
                ware.Number = Convert.ToInt32(dr[3].ToString());
                ware.dtime = Convert.ToDateTime(dr[4].ToString());
                ware.Shelf = Convert.ToInt32(dr[5].ToString());
                ware.jname = dr[6].ToString();
                ware.dianhua = dr[7].ToString();
                war.Add(ware);
            }
        }
        conn.Close();
        return war;
    }

实体类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class logo : System.Web.UI.Page
{
    public string asc = null;
    int count = 5;//一页要显示的条数
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Label_Now.Text = "1";
            Label_Max.Text = Max().ToString();
            Repeater1.DataSource = new WarehouseDate().selects(count, 1);
            Repeater1.DataBind();
            btn_prev.Enabled = false;

            int max = Max();
            DropDownList1.Items.Clear();
            for (int i = 1; i <= max; i++)
            {
                DropDownList1.Items.Add(new ListItem(i.ToString(), i.ToString()));
            }
        }
        #region
        asc = Request["ppp"];
        Label1.Text = asc;
        if (Request.Cookies["name"] != null)
        {
            Label1.Text = Request.Cookies["name"].Value;
        }
        else
            Response.Redirect("Default.aspx");
        Label1.Text += "登录成功,欢迎你!";
        #endregion

        DropDownList1.TextChanged += DropDownList1_TextChanged;
        DropDownList1.AutoPostBack = true;
        btn_lest.Click += btn_lest_Click;//末页
        btn_next.Click += btn_next_Click;//下一页
        btn_first.Click += btn_first_Click;//首页
        btn_prev.Click += btn_prev_Click;//上一页
        Button1.Click += Button1_Click;//跳转

    }

    void DropDownList1_TextChanged(object sender, EventArgs e)
    {
        //获取当前页,计算要看的下一页的页号;
        int nextpage = Convert.ToInt32(DropDownList1.SelectedValue);

        //判断是否有下一页
        //if(nextpage>Max())
        //{
        //    return;
        //}
        if (nextpage <= 1)
        {
            btn_prev.Enabled = false;
        }
        else
        {
            btn_prev.Enabled = true;
        }
        if (nextpage >= 12)
        {
            btn_next.Enabled = false;
        }
        else
            btn_next.Enabled = true;

        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, nextpage);
        Repeater1.DataBind();

        //修改显示页数
        Label_Now.Text = nextpage.ToString();

    }

    void Button1_Click(object sender, EventArgs e)
    {

        //获取当前页,计算要看的下一页的页号;
        int nextpage = Convert.ToInt32(DropDownList1.SelectedValue);

        //判断是否有下一页
        //if(nextpage>Max())
        //{
        //    return;
        //}
        if (nextpage <= 1)
        {
            btn_prev.Enabled = false;
        }
        btn_next.Enabled = true;
        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, nextpage);
        Repeater1.DataBind();

        //修改显示页数
        Label_Now.Text = nextpage.ToString();
    }

    void btn_prev_Click(object sender, EventArgs e)
    {
        //获取当前页,计算要看的下一页的页号;
        int nextpage = Convert.ToInt32(Label_Now.Text) - 1;

        //判断是否有下一页
        //if(nextpage>Max())
        //{
        //    return;
        //}
        if (nextpage <= 1)
        {
            btn_prev.Enabled = false;
        }
        btn_next.Enabled = true;
        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, nextpage);
        Repeater1.DataBind();

        //修改显示页数
        Label_Now.Text = nextpage.ToString();
        DropDownList1.Text = nextpage.ToString();
    }

    void btn_first_Click(object sender, EventArgs e)
    {
        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, 1);
        Repeater1.DataBind();
        //修改显示页数
        Label_Now.Text = "1";
        btn_next.Enabled = true;
        btn_prev.Enabled = false;
    }

    void btn_next_Click(object sender, EventArgs e)
    {
        //获取当前页,计算要看的下一页的页号;
        int nextpage = Convert.ToInt32(Label_Now.Text) + 1;

        //判断是否有下一页
        //if(nextpage>Max())
        //{
        //    return;
        //}
        if (nextpage >= Max())
        {
            btn_next.Enabled = false;
        }

        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, nextpage);
        Repeater1.DataBind();
        btn_prev.Enabled = true;
        //修改显示页数
        Label_Now.Text = nextpage.ToString();
        DropDownList1.Text = nextpage.ToString();
    }

    void btn_lest_Click(object sender, EventArgs e)
    {
        //按照获取的页数绑定相应的页数
        Repeater1.DataSource = new WarehouseDate().selects(count, Max());
        Repeater1.DataBind();
        //修改显示页数
        Label_Now.Text = Max().ToString();
        btn_next.Enabled = false;
        btn_prev.Enabled = true;
        DropDownList1.Text = Max().ToString();
    }

    /// <summary>
    /// 获取到最大的页数
    /// </summary>
    /// <returns></returns>
    public int Max()
    {
        List<Warehouse> wlist = new WarehouseDate().select();
        double End2 = Convert.ToInt32(Math.Ceiling(wlist.Count / (count * 1.0)));
        int End = Convert.ToInt32(End2);
        return End;
    }

}

C#

时间: 2024-08-10 21:16:27

分页展示的相关文章

jquery分页展示控件:kkpager

kkpager v1.2 js分页展示控件,传入简单参数就能使用的分页效果控件 准备工作,引入js.css <script type="text/javascript" src="../lib/jquery-1.10.2.min.js"></script> <script type="text/javascript" src="../src/kkpager.min.js"></scri

高性能秒杀系统实现,添加部分功能---分页展示订单

最近一直在看慕课网的ssm 秒杀系统的视频,一方面是弥补对SSM框架不熟练的缺点,二来是学习视频中框架分层设计代码结构的思想 我这里分页采用的是MySql的分页原理,说白了就是 select * from tablseXX order by XX limit start,offest ; 先上张图,因为我以前只写过ASP的分页,还是很多年前的事情,不过现在都流行 后端提供数据,前端分页, 我这里用的还是JSP循环分页 ,太LOW了 代码贴上 <select id = "totalOrder

ssh整合问题总结--使用HibernateTemplate实现数据分页展示

在进行大量的数据展示时,必须要使用分页查询,第一次使用在SSH框架整合中使用分页查询,遇到了一些问题,下面以我练习的项目为例详细介绍,如何在Spring+hibernate(+action)的环境下完成数据的分页查询. 在utils包下新建一个pageBean(这个实体类用于封装当前页面的数据集合,以及和page相关的参数): public class PageBean<T> { private int page;//当前页数 private int totalCount;//总记录数 pri

用django将数据从数据库提出并分页展示

不要笑这个太简单噢~~大神们路过的请自动忽略本文-- 要把数据提出并展示出来~效果如下: 1.需要建立一个project噢~ project中要包含一个展示的html页面和一个"后台"的Python页面.为了把.html和.py文件区分开,所以在project的文件夹下要建立一个templates文件夹来存放html文件.建好的project如下: 2.打开test.py进行编辑. 1)首先,要连接数据库,其中的MySQLdb需要自行下载安装,它是python连接mysql数据库所必不

数据分页展示

package cn.gzsxt.util; import java.util.List; /** * 分页封装 */public class PageUtil { /** * 1 数据里面的数据总行数 */ private int rowcount;// 数据里面的数据总行数 /** * 2 一页多少行数据 */ private int pagesize=10;// 一页多少行数据 /** * 3 查询起始行 limit startrow,pagesize; */ private int st

Application对象、ViewState对象、分页展示--2017年1月4日

Application对象 存储 Application 变量  Application["application名称"] = "application的值"; 取回 Application 变量 string str = Application["application名称"]; 常用的属性和方法 All 返回全部的Application对象变量到一个对象数组   AllKeys 返回全部的Application对象变量到一个字符串数组   C

百万级数据分页展示

整理自: http://www.cnblogs.com/ajun/archive/2012/12/12/2814780.html http://bbs.csdn.net/topics/310162095 分页思路: https://segmentfault.com/q/1010000003485063/a-1020000003486645

自己写的mysql分页展示。

比较简单.传智韩老师的思想.可以直接拿来用哈.分层思想的.还没学习MVC,在这里先记录一下. 首先.把分页需要的信息都封装到一个类里面,ApartPage.class.php <?php class ApartPage{ public $rowCount; //总共有多少行 public $pageCount; //总共有多少页 public $pageNow=1; //当前页 public $pageSize=5; //每页显示多少行 public $res_array; //select之后

Laravel5.1 分页展示

Laravel为我们提供了一套分页的逻辑,我们无需自己实现分页逻辑,只需要执行几个简单的方法就能实现漂亮的分页. 1 simplePaginate 这是一种只显示上一页下一页的样式分页,我们来看看怎么用: class PostController extends Controller { public function index() { // $posts = Post::simplePaginate(10); 这是Model的版本 /** * simplePaginate * 第一个参数:每

五.1分页--展示所有页码

应该规定每页显示多少条数据,再拿总数据量除每页显示的数据条数就知道到底总共有多少页. 需要的变量: 最多显示的页码数--max_show = 11 half_show = max_show // 2 每页显示的数据条数--per_num = 10 总数据量--all_count = len(users)   #计算users有多长即可 总页码数---total_num, more = divmod(all_count, per_num) #总数据量除每页数据条数即可--用divmod方法,但注意