asp.net 分页html代码,ASP.NET 分页实现源码(上一页 下一页共页数 第几页)

本次分页适合所有ASP.net数据绑定控件: 如:GridView DataList 等等

下面例子以DataList 为例

说明:

IList     泛型集合

ViewState["hotelList2"]   当前页的数据

this.DataListHotelList   当前页的DataList 控件

Databind()   这个方法在页面首次加载时调用

Databind(IList hf)   这个方法一般情况下 根据需求不同进行相关的数据绑定

1.前台 .aspx

BorderStyle="Solid" BorderWidth="1px" CssClass="anniu" Font-Size="12px" ForeColor="Black"

Font-Bold="False" Height="16px" Width="57px" OnClick="btnPrev_Click" />

BorderStyle="Solid" BorderWidth="1px" CssClass="anniu" Font-Size="12px" ForeColor="Black"

Font-Bold="False" Height="16px" Width="57px" OnClick="btnNext_Click" />

2.后台 .cs

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

//首次加载,赋初值

ViewState["Page"] = 0;

Databind()//绑定所有信息列表

}

this.lalShowText.Text = "";//清空提示信息

}

//进行分页数据绑定

private void Databind()

{

try

{

PagedDataSource pdslvyou = new PagedDataSource();

//对PagedDataSource 对象的相关属性赋值

IList hfList = ViewState["hotelList2"] as IList;

pdslvyou.DataSource = hfList;

pdslvyou.AllowPaging = true;

pdslvyou.PageSize = 8;

pdslvyou.CurrentPageIndex = Pager;

lblCurrentPage.Text = "第 " + (pdslvyou.CurrentPageIndex + 1).ToString() + " 页 共 " +    pdslvyou.PageCount.ToString() + " 页";

SetEnable(pdslvyou);

//把PagedDataSource 对象赋给DataList控件

this.DataListHotelList.DataSource = pdslvyou;

this.DataListHotelList.DataBind();

}

catch (Exception)

{ }

}

//传入一个集合 进行分页数据绑定

private void Databind(IList hf)

{

try

{

PagedDataSource pdslvyou = new PagedDataSource();

//对PagedDataSource 对象的相关属性赋值

IList hfList = hf;

pdslvyou.DataSource = hfList;

pdslvyou.AllowPaging = true;

pdslvyou.PageSize = 8;

pdslvyou.CurrentPageIndex = Pager;

lblCurrentPage.Text = "第 " + (pdslvyou.CurrentPageIndex + 1).ToString() + " 页 共 " + pdslvyou.PageCount.ToString() + " 页";

SetEnable(pdslvyou);

//把PagedDataSource 对象赋给DataList控件

this.DataListHotelList.DataSource = pdslvyou;

this.DataListHotelList.DataBind();

ViewState.Add("hotelList2", hfList);

}

catch (Exception)

{ }

}

//翻页

private void SetEnable(PagedDataSource pds)

{

btnPrev.Enabled = true;

btnNext.Enabled = true;

if (pds.IsFirstPage)

btnPrev.Enabled = false;

if (pds.IsLastPage)

btnNext.Enabled = false;

}

//上一页

protected void btnPrev_Click(object sender, EventArgs e)

{

Pager--;

Databind();

}

//下一页

protected void btnNext_Click(object sender, EventArgs e)

{

Pager++;

Databind();

}

///     /// 当前页数    ///     private int Pager    {        get        {            return (int)ViewState["Page"];        }        set        {            ViewState["Page"] = value;        }    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个分页控件名为AspNetPager控件,是Asp.net上使用率最高的分页控件,想怎么分就怎么分.附带'超详细代码注释",好用请给评论. 基本步骤: 1.拖拽控件(存放到到Bin目录下,再拖入工具箱) 2.粘贴复制(已放出实例码) 3.修改Sql语句,即可使用. 特性如下: 强大的各种属性,附带多种CSS,可自定义CSS,想怎么分就怎么分页! 上下页,1234分页,首尾分页,页面跳转,等等,统统一步搞定. 实例代码(包内也有): ___________________________________________________________________ Default.aspx页面↓↓ ___________________________________________________________________ <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!--分页控件命名--> <%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %> <!--分页控件命名--> <!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"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:DataList ID="DataList1" runat="server"> <ItemTemplate> <%# Eval("ID") %> </ItemTemplate> </asp:DataList> <!--分页控件开始--> <webdiyer:AspNetPager ID="Pager1" runat="server" PageSize="8" CssClass="anpager" OnPageChanged="AspNetPager1_PageChanged" FirstPageText="首页 |" LastPageText="| 尾页" NextPageText="下一页" PrevPageText="上一页" ShowPageIndexBox="Always" AlwaysShow="True" Font-Size="13px"> </webdiyer:AspNetPager> <!--分页控件结束--> </div> </form> </body> </html> ____________________________________________________________ Default.aspx.cs页面代码↓↓ ____________________________________________________________ using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; //引用命名空间 using System.Data; using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { string connstring = "server=baiyi-js\\SQL2005;uid=sa;pwd=123456;database=xcbaiyi";//修改数据库连接字符串(必须改) protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SqlConnection conn = null; try { conn = new SqlConnection(connstring); conn.Open(); SqlCommand Count = new SqlCommand(); Count.Connection = conn; Count.CommandText = "select count(*) from tuiguang_2"; //Sql查询语句(必修改) Pager1.RecordCount = (int)Count.ExecuteScalar(); //"Pager1"为分页控件ID.在工具箱拖拽添加控件,同时会在aspx页面顶部添加控件命名控件(无需修改) BindData(); } finally { conn.Close(); } } } //绑定数据-2_只修改Sql语句即可 public void BindData() { SqlConnection conn = new SqlConnection(connstring); string sql = "select * from tuiguang_2";//Sql查询语句(必修改) SqlDataAdapter da = new SqlDataAdapter(sql, conn); DataSet ds = new DataSet(); da.Fill(ds, Pager1.PageSize * (Pager1.CurrentPageIndex - 1), Pager1.PageSize, "temptbl"); DataTable dt = ds.Tables["temptbl"]; DataList1.DataSource = dt; DataList1.DataBind(); } //控件事件-每次重新绑定_不需修改 protected void AspNetPager1_PageChanged(object src, EventArgs e) { BindData(); } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值