webform分页
前端界面:
当前第【<asp:Label ID="Label_nowpage" runat="server" Text="Label"></asp:Label>】页  
共【<asp:Label ID="Label_maxpage" runat="server" Text="Label"></asp:Label>】页  
<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" AutoPostBack="true"></asp:DropDownList>
<asp:Button ID="Button1" runat="server" Text="跳转" />
实体类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; /// <summary>
/// goods 的摘要说明
/// </summary>
public class goods
{
public goods()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public int ids { get; set; }
public string goodsname { get; set; }
public string number { get; set; }
public string sprice { get; set; }
public DateTime intime { get; set; }
public string gtel { get; set; }
public string goodsbase { get; set; } }
数据访问类:
选择五条:
public List<goods> select(int count,int nowpage)
{
List<goods> glist = new List<goods>();
cmd.CommandText = "select top "+count+"*from goods where ids not in(select top "+((nowpage-)*count)+" ids from goods)";
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
goods g = new goods();
g.ids = Convert.ToInt32(dr[]);
g.goodsname = dr[].ToString();
g.number = dr[].ToString();
g.sprice = dr[].ToString();
g.intime = Convert.ToDateTime(dr[]);
g.gtel = dr[].ToString();
g.goodsbase = dr[].ToString(); glist.Add(g);
}
}
conn.Close();
return glist;
}
选择全部:
public List<goods> select()
{
List<goods> glist = new List<goods>();
cmd.CommandText = "select*from goods";
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
goods g = new goods();
g.ids = Convert.ToInt32(dr[]);
g.goodsname = dr[].ToString();
g.number = dr[].ToString();
g.sprice = dr[].ToString();
g.intime = Convert.ToDateTime(dr[]);
g.gtel = dr[].ToString();
g.goodsbase = dr[].ToString(); glist.Add(g);
}
}
conn.Close();
return glist;
}
后台代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class Default2 : System.Web.UI.Page
{
int count = ;//每页显示条数
protected void Page_Load(object sender, EventArgs e)
{
//string ni = Session["a"].ToString();
//Label1.Text = ni + ",欢迎回来!";
if (!IsPostBack)
{
Label_nowpage.Text = "";
Label_maxpage.Text = maxpagenum().ToString();
Repeater1.DataSource = new goodsdata().select(count, );
Repeater1.DataBind();
btn_prev.Enabled = false; int max = maxpagenum();
for (int i = ; i <= max; i++)
{
DropDownList1.Items.Add(i.ToString());
} } DropDownList1.SelectedIndexChanged += Button1_Click;
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;
} void Button1_Click(object sender, EventArgs e)
{
//获取当前页,计算要看的下一页的页号
int pagenext = Convert.ToInt32(DropDownList1.SelectedValue); //按照获取的页数绑定相应的数据
Repeater1.DataSource = new goodsdata().select(count, pagenext);
Repeater1.DataBind();
//修改显示页数
Label_nowpage.Text = pagenext.ToString();
//判断是否禁用
if (pagenext == )
{
btn_prev.Enabled = false;
btn_next.Enabled = true;
}
if (pagenext == maxpagenum())
{
btn_prev.Enabled = true;
btn_next.Enabled = false;
} }
void btn_first_Click(object sender, EventArgs e)//跳转第一页
{
//按照获取的页数绑定相应的数据
Repeater1.DataSource = new goodsdata().select(count, );
Repeater1.DataBind();
//修改显示页数
Label_nowpage.Text = ""; btn_prev.Enabled = false;
btn_next.Enabled = true;
} void btn_prev_Click(object sender, EventArgs e)//跳转上一页
{
//获取当前页,计算要看的下一页的页号
int pagenext = Convert.ToInt32(Label_nowpage.Text) - ; //按照获取的页数绑定相应的数据
Repeater1.DataSource = new goodsdata().select(count, pagenext);
Repeater1.DataBind();
//修改显示页数
Label_nowpage.Text = pagenext.ToString();
//判断是否有下一页
if (pagenext<=)
{
btn_prev.Enabled = false;
}
//恢复下一页按钮的可用性
btn_next.Enabled = true;
} void btn_next_Click(object sender, EventArgs e)//跳转下一页
{
//获取当前页,计算要看的下一页的页号
int pagenext = Convert.ToInt32(Label_nowpage.Text) + ; //按照获取的页数绑定相应的数据
Repeater1.DataSource = new goodsdata().select(count,pagenext);
Repeater1.DataBind();
//修改显示页数
Label_nowpage.Text = pagenext.ToString();
//判断是否有下一页
if (pagenext >= maxpagenum())
{
btn_next.Enabled = false;
}
btn_prev.Enabled = true;
} void btn_last_Click(object sender, EventArgs e)//跳转尾页
{
//按照获取的页数绑定相应的数据
Repeater1.DataSource = new goodsdata().select(count, maxpagenum());
Repeater1.DataBind();
//修改显示页数
Label_nowpage.Text = maxpagenum().ToString(); btn_prev.Enabled = true;
btn_next.Enabled = false;
} public int maxpagenum()//计算最大页数的方法
{
List<goods> glist = new goodsdata().select(); int end = Convert.ToInt32(Math.Ceiling(glist.Count / (count * 1.0)));
return end;
}
}
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 分页
界面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx ...
- 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对象,可 ...
随机推荐
- win7 64位 asp+access 数据库连接出错[代码:02],请检查数据库链接文件中的连接字串
解决办法,启用32位应用程序改为true 打开“Internet 信息服务(IIS)管理器”,在最右边的窗口中点击“应用程序池”,在用到的应用程序池上点击右键,选择“高级设置”
- Excel标题与索引的对应关系
/// <summary> /// 返回对应标题的索引 /// </summary> /// <param name="columnTitle"> ...
- sed
命令行格式为: sed [-nefri] ‘command’ 输入文本/文件 常用选项: -n∶取消默认的输出,使用安静(silent)模式.在一般 sed 的用法中 ...
- 在Page_Loaded下删除PivotItem出错的解决方案
之前我一个例子中出现无法再页面Loaded事件中删除PivotItem的情况,页面会报错 Value does not fall within the expected range. 附图 原因是因为 ...
- Windows Phone 十四、磁贴通知
磁贴(Tile) Windows Phone 磁贴种类: 小尺寸 SmallLogo:71x71: Square71x71 中等 Logo:150x150: Square150x150 宽 WideL ...
- java插入排序
/** * 插入排序 * @param a * @date 2016-10-8 * @author shaobn */ public static void insertSort(int[] a){ ...
- paper 115:常见的概率分布(matlab作图)
一.常见的概率分布 表1.1 概率分布分类表 连续随机变量分布 连续统计量分布 离散随机变量分布 分布 分布 二项分布 连续均匀分布 非中心 分布 离散均匀分布 (Gamma)分布 分布 几何分布 指 ...
- python生成器实现杨辉三角
def triangels(): """ 杨辉三角 """ lst = [1] n_count = 2 # 下一行列表长度 while Tr ...
- VM环境下,快速复制多个SQLServer实例,环境调整
--windows机器名 sysprep.exe 勾选通用,并关机 --实例名 SELECT @@SERVERNAME ,serverproperty('servername') if server ...
- activity 所需jiar包
activity下载后有很多jar包有的jar包不一定用得上,也有些jar是重复的,这里就整理了一下必要的jar包 路径.. \activiti-5.19.0.2\wars\activiti-expl ...