Asp.Net实现的通用分页函数
来源: 阅读:798 次 日期:2016-08-09 15:53:18
温馨提示: 小编为您整理了“Asp.Net实现的通用分页函数”,方便广大网友查阅!

本文实例讲述了Asp.Net实现的通用分页函数。分享给大家供大家参考,具体如下:

功能:

1.每页设置显示9页,超过9页,点5页后的+1页显示(可以随便修改)

2.CSS样式自己可以设置

3.无任何咋代码产生,利于搜索引擎优化

分页程序

objPDS = new PagedDataSource();

objPDS.DataSource = dtTable.DefaultView;//绑定数据源

objPDS.AllowPaging = true;

objPDS.PageSize =10;//分页数目

int curPage;

int cshi;

int jshi;

int zyes = Int32.Parse( objPDS.PageCount.ToString());

this.tjixx.Text = "总共 <font color=red>" + dtTable.Rows.Count + " </font>条信息";

this.tjixx.Text += "|共 <font color=red>" + zyes + " </font>页";

if (Request.QueryString["Page"] != null)

{

  if (Int32.Parse(Request.QueryString["Page"]) > zyes)

    curPage = zyes;

  else

  curPage = Int32.Parse(Request.QueryString["Page"]);

}

else

{

  curPage = 1;

}

if (zyes <= 9)

{

  cshi = 1;

  jshi = zyes;

}

else

{

  if (curPage <= 5)

  {

    cshi = 1;

    jshi = 9;

  }

else

{

  cshi = curPage - 4;

  int jshils = curPage + 4;

  if (jshils > zyes)

    jshi = zyes;

  else

    jshi=curPage + 4;

}

}

objPDS.CurrentPageIndex = curPage - 1;

StringBuilder m_strPageInfo = new StringBuilder();

for (int i = cshi; i <=jshi; i++)

{

  if (i == Int32.Parse(curPage.ToString()))

    m_strPageInfo.Append(" <span class=\"dqye\"> <strong>" + i + " </strong> </span> ");

  else

    m_strPageInfo.Append(" <span class=\"qtye\"> <strong> <a href=\"newslist_ej" + Request.QueryString["wzcat"] + "_Page" + i + ".html\">" + i + " </a> </strong> </span> ");

}

this.yemsl.Text = m_strPageInfo.ToString();

if (!objPDS.IsFirstPage)

{

  linkPre.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage - 1);

  linkPre.NavigateUrl += ".html";

}

if (!objPDS.IsLastPage)

{

  linkNext.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + Convert.ToString(curPage + 1);

  linkNext.NavigateUrl += ".html";

}

linkFirstPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page1";

linkFirstPage.NavigateUrl += ".html";

linkEndPage.NavigateUrl = "newslist_ej" + Request.QueryString["wzcat"] + "_Page" + objPDS.PageCount.ToString();

linkEndPage.NavigateUrl += ".html";

this.DataList4.DataSource = objPDS;//绑定分页的数据

this.DataList4.DataBind();

Aspx文件:

分页部分:

<div align="center"> <asp:HyperLink ID="linkFirstPage" runat="server" Font-Underline="False">首页 </asp:HyperLink><<

<asp:HyperLink ID="linkPre" runat="server" Font-Underline="False">上一页 </asp:HyperLink>

<asp:Literal ID="yemsl" runat="server"> </asp:Literal>

<asp:HyperLink ID="linkNext" runat="server" Font-Underline="False">下一页 </asp:HyperLink>   

  >> <asp:HyperLink

  ID="linkEndPage" runat="server" Font-Underline="False">尾页 </asp:HyperLink>| <asp:Literal

    ID="tjixx" runat="server"> </asp:Literal> </div>

希望本文所述对大家asp.net程序设计有所帮助。

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map