界面:

 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

 <!DOCTYPE html>

 <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table style="background-color: blue; width: 100%; text-align:center">
<thead>
<tr style="color: white;">
<td>编号</td>
<td>名称</td>
<td>品牌</td>
<td>上市时间</td>
<td>油耗</td>
<td>动力</td>
<td>排量</td>
<td>价格</td>
<td>图片</td>
</tr>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<tr style="background-color: #808080">
<td><%#Eval("Code") %></td>
<td><%#Eval("Name") %></td>
<td><%#Eval("Brand") %></td>
<td><%#Eval("Time") %></td>
<td><%#Eval("Oil") %></td>
<td><%#Eval("Power") %></td>
<td><%#Eval("Exhaust") %></td>
<td><%#Eval("Price") %></td>
<td><%#Eval("Pic") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</tbody>
</table>
</FooterTemplate>
</asp:Repeater>
<div style="width: 50%; position: relative; float: left; height: 25px; line-height: 25px; text-indent: 20px;">

<asp:Label ID="Label_Sum" runat="server" Text="Label"></asp:Label>
条记录,共
<asp:Label ID="Label_Maxpage" runat="server" Text="Label"></asp:Label>
页,第
<asp:Label ID="Label_Nowpage" runat="server" Text="Label"></asp:Label>
页|每页
<asp:DropDownList ID="DropDownList2" runat="server" AutoPostBack="true" ></asp:DropDownList>
条记录
</div>
<div style="width: 30%; position: relative; float: right; height: 25px; line-height: 25px;">
<asp:LinkButton ID="btn_First" runat="server">首页</asp:LinkButton>&nbsp
<asp:LinkButton ID="btn_Prev" runat="server">上一页</asp:LinkButton>&nbsp
<asp:LinkButton ID="btn_Next" runat="server">下一页</asp:LinkButton>&nbsp
<asp:LinkButton ID="btn_Last" runat="server">尾页</asp:LinkButton>&nbsp
<asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList>
<asp:Button ID="Button1" runat="server" Text="跳转" />
</div>
</div>
</form>
</body>
</html>

界面Default.aspx

后台:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; /// <summary>
/// Car 的摘要说明
/// </summary>
public class Car
{
public Car()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public string Code { get; set; }
public string Name { get; set; }
public string Brand { get; set; }
public DateTime Time { get; set; }
public decimal Oil { get; set; }
public int Power { get; set; }
public decimal Exhaust { get; set; }
public decimal Price { get; set; }
public string Pic { get; set; }
}

Car

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.SqlClient; /// <summary>
/// CarData 的摘要说明
/// </summary>
public class CarData
{
SqlConnection conn = null;
SqlCommand cmd = null;
public CarData()
{
conn = new SqlConnection("server=.;database=mydb;user=sa;pwd=123");
cmd = conn.CreateCommand();
} public List<Car> Select()
{
List<Car> clist = new List<Car>();
cmd.CommandText = "select *from Car"; conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
Car c = new Car();
c.Code = dr[].ToString();
c.Name = dr[].ToString();
c.Brand = dr[].ToString();
c.Time = Convert.ToDateTime(dr[]);
c.Oil = Convert.ToDecimal(dr[]);
c.Power = Convert.ToInt32(dr[]);
c.Exhaust = Convert.ToInt32(dr[]);
c.Price = Convert.ToDecimal(dr[]);
c.Pic = dr[].ToString(); clist.Add(c);
}
}
conn.Close();
return clist;
} public List<Car> Select(int count,int nowpage)
{
List<Car> clist = new List<Car>();
cmd.CommandText = "select top "+count+" *from Car where Code not in (select top "+((nowpage-)*count)+" Code from Car) "; conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
Car c = new Car();
c.Code = dr[].ToString();
c.Name = dr[].ToString();
c.Brand = dr[].ToString();
c.Time = Convert.ToDateTime(dr[]);
c.Oil = Convert.ToDecimal(dr[]);
c.Power = Convert.ToInt32(dr[]);
c.Exhaust = Convert.ToInt32(dr[]);
c.Price = Convert.ToDecimal(dr[]);
c.Pic = dr[].ToString(); clist.Add(c);
}
}
conn.Close();
return clist;
}
}

CarData

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DropDownList2.Items.Clear();
for (int i = ; i <= Sum(); i++)
{
DropDownList2.Items.Add(new ListItem(i.ToString(), i.ToString()));
} DropDownList2.SelectedValue = "";//默认每页五条 Change();
} btn_First.Click += btn_First_Click;//首页
btn_Prev.Click += btn_Prev_Click;//上一页
btn_Next.Click += btn_Next_Click;//下一页
btn_Last.Click += btn_Last_Click;//尾页
Button1.Click += Button1_Click;//跳转按钮
DropDownList2.SelectedIndexChanged += DropDownList2_SelectedIndexChanged;//每页数据条数发生改变
} //每页数据条数发生改变时执行
private void Change()
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
Label_Sum.Text = Sum().ToString();//总数据条数
Label_Maxpage.Text = MaxPage().ToString();//总页数
Label_Nowpage.Text = "";//当前页
Repeater1.DataSource = new CarData().Select(count, );
Repeater1.DataBind(); DropDownList1.Items.Clear();
for (int i = ; i <= MaxPage(); i++)
{
DropDownList1.Items.Add(new ListItem(i.ToString(), i.ToString()));
}
btn_First.Enabled = false;
btn_Prev.Enabled = false;
btn_Next.Enabled = true;
btn_Last.Enabled = true;
} //每页数据条数发生改变
void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
Change();
if (DropDownList2.SelectedValue == "")
{
btn_Next.Enabled = false;
btn_Last.Enabled = false;
}
} //跳转按钮
void Button1_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
//按照页数获取绑定数据
Repeater1.DataSource = new CarData().Select(count,Convert.ToInt32( DropDownList1.SelectedValue));
Repeater1.DataBind();
//修改显示页数
Label_Nowpage.Text = DropDownList1.SelectedValue;
if (Convert.ToInt32(Label_Nowpage.Text) <= )//若为首页禁用上一页和首页按钮
{
btn_First.Enabled = false;
btn_Prev.Enabled = false;
btn_Next.Enabled = true;
btn_Last.Enabled = true;
}
if (Convert.ToInt32(Label_Nowpage.Text) >= MaxPage())//若为最后一页禁用下一页和尾页按钮
{
btn_Next.Enabled = false;
btn_Last.Enabled = false;
btn_First.Enabled = true;
btn_Prev.Enabled = true;
}
} //首页
void btn_First_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
//按照页数获取绑定数据
Repeater1.DataSource = new CarData().Select(count, );
Repeater1.DataBind();
//修改显示页数
Label_Nowpage.Text = "";
//当前为首页禁用上一页和首页按钮
btn_First.Enabled = false;
btn_Prev.Enabled = false; btn_Next.Enabled = true;
btn_Last.Enabled = true;
} //上一页
void btn_Prev_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
//获取当前页,计算上一页页数
int nextpage = Convert.ToInt32(Label_Nowpage.Text) - ;
//按照页数获取绑定数据
Repeater1.DataSource = new CarData().Select(count, nextpage);
Repeater1.DataBind();
//修改显示页数
Label_Nowpage.Text = nextpage.ToString();
if (nextpage <= )//若为首页禁用上一页和首页按钮
{
btn_First.Enabled = false;
btn_Prev.Enabled = false;
}
btn_Next.Enabled = true;
btn_Last.Enabled = true;
}
//下一页
void btn_Next_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
//获取当前页,计算下一页页数
int nextpage = Convert.ToInt32(Label_Nowpage.Text) + ;
//按照页数获取绑定数据
Repeater1.DataSource = new CarData().Select(count, nextpage);
Repeater1.DataBind();
//修改显示页数
Label_Nowpage.Text = nextpage.ToString();
if (nextpage >= MaxPage())//若为最后一页禁用下一页和尾页按钮
{
btn_Next.Enabled = false;
btn_Last.Enabled = false;
}
btn_First.Enabled = true;
btn_Prev.Enabled = true;
} //尾页
void btn_Last_Click(object sender, EventArgs e)
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
//按照页数获取绑定数据
Repeater1.DataSource = new CarData().Select(count, MaxPage());
Repeater1.DataBind();
//修改显示页数
Label_Nowpage.Text = MaxPage().ToString();
//若为最后一页禁用下一页和尾页按钮
btn_Next.Enabled = false;
btn_Last.Enabled = false; btn_First.Enabled = true;
btn_Prev.Enabled = true;
} //总的数据条数
public int Sum()
{
List<Car> clist = new CarData().Select();
int a = clist.Count;
return a;
} //总页数
public int MaxPage()
{
int count = Convert.ToInt32(DropDownList2.SelectedValue);//每页的数据条数
List<Car> clist = new CarData().Select();
int a = clist.Count;
int end = Convert.ToInt32(Math.Ceiling(a / (count * 1.0)));
return end;
}
}

Default.aspx.cs

webform 分页的更多相关文章

  1. WebForm 分页、组合查询--2017年1月5日

    sql = "select * from Commodity"; hs = new Hashtable(); if (txt_name.Text.Trim() != "& ...

  2. webform 分页、组合查询综合使用

    界面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx ...

  3. WebForm 分页与组合查询

    1.封装实体类 2.写查询方法 //SubjectData类 public List<Subject> Select(string name) { List<Subject> ...

  4. webform分页

    前端界面: 当前第[<asp:Label ID="Label_nowpage" runat="server" Text="Label" ...

  5. WebForm分页浏览

    1.封装类 //封装类 using System; using System.Collections.Generic; using System.Web; /// <summary> // ...

  6. 【Asp.Net WebFrom】分页

    Asp.Net WebForm 分页 一. 前言 Asp.Net WebForm 内置的DataPager让人十分蛋疼 本文使用的分页控件是第三方分页控件 AspNetPager,下载地址: 链接: ...

  7. GirdView 追忆学生时代的百思不得解

    临近年关,越多越多的园友开始了对工作.生活的总结,以及对来年目标的确立.这很励志,人是一根能思想的苇草,想来想去,我实在没什么惊天地.泣鬼神的英勇事迹,16年毕业季,按部就班的在时间的马车上颠簸,阅读 ...

  8. 自己写的一个Pager分页组件,WebForm,Mvc都适用

    我一说写这个功能的时候,好多人估计有疑问.分页功能网上多的是,搜一个不就行了,你这样不是浪费时间么.你说这句话的时候,我是比较信的,首先自己写一些东西是很耗时,有这些时间又能多打几盘LOL了.但是我觉 ...

  9. WebForm Application Viewstate 以及分页(功能性的知识点)

    Application: 全局公共变量组 存放位置:服务器 特点:所有访问用户都是访问同一个变量,但只要服务器不停机,变量一直存在于服务器的内存中,不要使用循环大量的创建Application对象,可 ...

随机推荐

  1. CFURLCreateStringByAddingPercentEscapes与CFURLCreateStringByReplacingPercentEscapesUsingEncoding

    iOS中访问HTTP资源需要对URL进行Encode才能正确访问. OC中有方法: - (NSString *)stringByAddingPercentEscapesUsingEncoding:(N ...

  2. Python-第三方库requests详解

    Requests 是用Python语言编写,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库.它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTT ...

  3. iOS 创建一个可以点击并拖拽的Button

    HSCButton.h #import <UIKit/UIKit.h> @interface HSCButton : UIButton { CGPoint beginPoint; } @p ...

  4. maven学习(上)- 基本入门用法

    一.下载及安装 1.1 下载maven 3.1.1 先到官网http://maven.apache.org/download.cgi 下载最新版本(目前是3.1.1 ),下载完成后,解压到某个目录(本 ...

  5. POJ 2533 Longest Ordered Subsequence LCS O(n*log(n))

    题目链接 最长上升子序列O(n*log(n))的做法,只能用于求长度不能求序列. #include <iostream> #define SIZE 1001 using namespace ...

  6. 一篇很好的Java、C、PHP、前端、Android、IOS的文章

    http://www.cctime.com/html/2016-11-8/1238265.htm 很好的讲了这些技术的学习路线,其中的文档资料很丰富,值得学习参考

  7. 中国知网cnki(永久会员账号)

    中国知网cnki(永久会员账号)大男孩免费分享   网站简介: (中国知网http://www.cnki.net/)中国知网是国家知识基础设施(National Knowledge Infrastru ...

  8. xcode添加快捷代码块

    添加快捷代码块 在开发过程中,一些常用的代码段,我们可以设置成快捷代码段来快速实现代码的编写. 如上图中的属性的设置,它们都有相同重复的代码@property (nonatomic, strong), ...

  9. centos7.0 安装redis集群

    生产环境下redis基本上都是用的集群,毕竟单机版随时都可能挂掉,风险太大.这里我就来搭建一个基本的redis集群,功能够用但是还需要完善,当然如果有钱可以去阿里云买云数据库Redis版的,那个还是很 ...

  10. Linux deepin 下sublimes配置g++ openGL

    参考 :http://blog.csdn.net/u010129448/article/details/47754623 ubuntu 下gnome只要将代码中deepin-terminal改为gno ...