分页形式:1/15页 首页 上一页 [1] 2 3 4 5 6 下一页 末页 private void myPage(string id) { ds=db.ExcuteQuery("select * from News where FK_TypeID="+id); PagedDataSource objPds = new PagedDataSource(); objPds.DataSource = ds.Tables[0].DefaultView; objPds.AllowPaging = true; objPds.PageSize =20; //每页的记录数 int CurPage; if (Request.QueryString["Page"] != null) CurPage = Convert.ToInt32(Request.QueryString["Page"]); else CurPage = 1; objPds.CurrentPageIndex = CurPage - 1; lblCurPage.Text = CurPage.ToString() + "/" + objPds.PageCount.ToString(); lnkFist.NavigateUrl = Request.CurrentExecutionFilePath + "?typeID=" + typeID + "&Page=1"; lnkLast.NavigateUrl = Request.CurrentExecutionFilePath + "?typeID=" + typeID + "&Page=" + Convert.ToString(objPds.PageCount); if (!objPds.IsFirstPage) lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?typeID="+typeID+"&Page=" + Convert.ToString(CurPage - 1); if (!objPds.IsLastPage) this.lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?typeID=" + typeID + "&Page=" + Convert.ToString(CurPage + 1); //获取分页码序列 this.lblNumber.Text = Numer(CurPage, objPds.PageCount); this.Repeater1.DataSource = objPds; this.Repeater1.DataBind(); } /// <summary> /// 返回分页码序列 /// </summary> /// <param name="curPage">当前页</param> /// <param name="pageTotal">总页数</param> /// <returns></returns> private string Numer(int curPage,int pageTotal) { string numberlist = ""; int a = curPage - 5; int b = curPage + 5; if (a > 0) { if (pageTotal < 10) { numberlist = linkList(a, curPage, pageTotal); } else { if (b < pageTotal) { numberlist = linkList(a, curPage, b); } else { numberlist = linkList(a, curPage, pageTotal); } } } else { if (pageTotal < 10) { numberlist = linkList(1, curPage, pageTotal); } else { numberlist=linkList(1, curPage, b); } } return numberlist; } /// <summary> /// 返回页码的链接字符串 /// </summary> /// <param name="frist">起始页码</param> /// <param name="curPage">当前页</param> /// <param name="last">终止页码</param> /// <returns></returns> private string linkList(int frist,int curPage, int last) { string list = ""; for (int i = frist; i <= last; i++) { if (i == curPage) { list += " <a href=" + Request.CurrentExecutionFilePath + " mce_href=" + Request.CurrentExecutionFilePath + "?typeID=" + typeID + "&Page=" + Convert.ToString(i) + ">[<font color='red'>" + i + "</font>]</a>"; } else { list += " <a href=" + Request.CurrentExecutionFilePath + " mce_href=" + Request.CurrentExecutionFilePath + "?typeID=" + typeID + "&Page=" + Convert.ToString(i) + ">" + i + "</a>"; } } return list; }