webform 分页
界面:
<%@ 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> 
<asp:LinkButton ID="btn_Prev" runat="server">上一页</asp:LinkButton> 
<asp:LinkButton ID="btn_Next" runat="server">下一页</asp:LinkButton> 
<asp:LinkButton ID="btn_Last" runat="server">尾页</asp:LinkButton> 
<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 分页的更多相关文章
- WebForm 分页、组合查询--2017年1月5日
sql = "select * from Commodity"; hs = new Hashtable(); if (txt_name.Text.Trim() != "& ...
- webform 分页、组合查询综合使用
界面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx ...
- WebForm 分页与组合查询
1.封装实体类 2.写查询方法 //SubjectData类 public List<Subject> Select(string name) { List<Subject> ...
- webform分页
前端界面: 当前第[<asp:Label ID="Label_nowpage" runat="server" Text="Label" ...
- WebForm分页浏览
1.封装类 //封装类 using System; using System.Collections.Generic; using System.Web; /// <summary> // ...
- 【Asp.Net WebFrom】分页
Asp.Net WebForm 分页 一. 前言 Asp.Net WebForm 内置的DataPager让人十分蛋疼 本文使用的分页控件是第三方分页控件 AspNetPager,下载地址: 链接: ...
- GirdView 追忆学生时代的百思不得解
临近年关,越多越多的园友开始了对工作.生活的总结,以及对来年目标的确立.这很励志,人是一根能思想的苇草,想来想去,我实在没什么惊天地.泣鬼神的英勇事迹,16年毕业季,按部就班的在时间的马车上颠簸,阅读 ...
- 自己写的一个Pager分页组件,WebForm,Mvc都适用
我一说写这个功能的时候,好多人估计有疑问.分页功能网上多的是,搜一个不就行了,你这样不是浪费时间么.你说这句话的时候,我是比较信的,首先自己写一些东西是很耗时,有这些时间又能多打几盘LOL了.但是我觉 ...
- WebForm Application Viewstate 以及分页(功能性的知识点)
Application: 全局公共变量组 存放位置:服务器 特点:所有访问用户都是访问同一个变量,但只要服务器不停机,变量一直存在于服务器的内存中,不要使用循环大量的创建Application对象,可 ...
随机推荐
- window 安装grunt
1.先安装nodejs ,npm ,参考 http://www.cnblogs.com/seanlv/archive/2011/11/22/2258716.html 2 安装grunt 百度搜索 参考 ...
- 别老嫌Mac系统难用 这些快捷键你都用过吗
苹果今年10月发布的全新带把儿(bar)的MacBook,轻薄炫酷的外观大受欢迎,其中当然不乏很多从Windows转到Mac阵营的用户.不少习惯了Windows操作习惯的用户在上手Mac时都会觉得非常 ...
- Java页面中文编码要转换两次encodeURI
1.js文件中使用encodeURI()方法. login_name = encodeURI(encodeURI(login_name)); 2.action中URLDecoder解码 loginNa ...
- SQL 隐藏手机号中间四位
SELECT INSERT(mobile, 4, 4, '****')AS Mobile from Users ;
- CentOS7 NTP 安装配置
NTP 网络时间协议用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP ...
- [Android Pro] 完美Android Cursor使用例子(Android数据库操作)
reference to : http://www.ablanxue.com/prone_10575_1.html 完美 Android Cursor使用例子(Android数据库操作),Androi ...
- Xcode 常用快捷键
一.Xcode基本快捷键 1.1.新建项目 Shift + CMD + N 1.2.项目中新建文件 CMD + N 1.3.运行 CMD + R 1.4.编译 CMD + B 1.5.停止运行 CMD ...
- centos7.0 下安装git(ssh方式)
最近刚弄了个阿里云,在上面弄个git服务器,这里只弄了ssh方式访问,http方式访问的可以看我另外一个随笔http://www.cnblogs.com/hz-cww/p/6077970.html. ...
- VS工具如何新建筛选器
最近,遇到了一个问题,别人用VS工具新建了一个工程,不知道怎么的,就是没有办法新建筛选器. 今天,终于解决了,记录下,也希望能够帮助更多的人. 当我们的工程目录里的文件越来越多的时候,这时候需要建立帅 ...
- Java Graphics2D 画出文字描边效果
在CSDN看到的,在此记下. (http://bbs.csdn.net/topics/390703095) import javax.swing.*; import java.awt.*; impor ...