读书人

住家写的一个分页代码看不太懂

发布时间: 2012-09-15 19:09:28 作者: rapoo

人家写的一个分页代码,看不太懂

C# code
public string PageList(int PageSize, int RCount, int currentPage, string UrlHead, string UrlFoot)        {            int stepNum = 3;            int pageRoot = 1;            string pageStr = "";            int PCount;            if (RCount % PageSize == 0)                PCount = RCount / PageSize;            else                PCount = RCount / PageSize + 1;            PCount = PCount == 0 ? 1 : PCount;            currentPage = currentPage == 0 ? 1 : currentPage;            //pageStr = "<div class=\"pages\"><span>共计: " + RCount.ToString() + " 条记录;分页 " + currentPage.ToString() + " / " + PCount.ToString() + "</span>";            // pageStr = " <li><a href='#'>« Prev</a></li>";            if (currentPage - stepNum < 2)                pageRoot = 1;            else                pageRoot = currentPage - stepNum;            int pageFoot = PCount;            if (currentPage + stepNum >= PCount)                pageFoot = PCount;            else                pageFoot = currentPage + stepNum;            if (pageRoot == 1)            {                if (currentPage == 1)                {                    pageStr += "<li><a>« 首页</a></li>";                //    pageStr += "<a>«</a>";                }                else                {                    pageStr += "<li><a href=\"" + UrlHead + "1" + UrlFoot + "\" title=\"首页\">«首页</a></li>";                    pageStr += "<li><a href=\"" + UrlHead + (currentPage - 1).ToString() + UrlFoot + "\" title=\"上一页\">«上一页</a></li>";                }            }            else            {                pageStr += "<li><a href=\"" + UrlHead + "1" + UrlFoot + "\" title=\"首页\">« 首页</a></li>";                pageStr += "<li><a href=\"" + UrlHead + (currentPage - 1).ToString() + UrlFoot + "\" title=\"上一页\">« 上一页</a></li><li class='disabled'><a>...</a></li>";            }            for (int i = pageRoot; i <= pageFoot; i++)            {                if (i == currentPage)                {                    pageStr += "<li class='active'><a>" + i.ToString() + "</a>";                }                else                {                    pageStr += "<li><a href=\"" + UrlHead + i.ToString() + UrlFoot + "\" title=\"第 " + i.ToString() + " 页\">" + i.ToString() + "</a></li>";                }                if (i == PCount)                    break;            }            if (pageFoot == PCount)            {                if (PCount == currentPage)                {                   //pageStr += "<li><a>下一页»</a></li>";                    pageStr += "<li><a>尾页»</a></li>";                }                else                {                    pageStr += "<li><a href=\"" + UrlHead + (currentPage + 1).ToString() + UrlFoot + "\" title=\"下一页\">下一页 »</a></li>";                    pageStr += "<li><a href=\"" + UrlHead + PCount.ToString() + UrlFoot + "\" title=\"尾页\">尾页 »</a></li>";                }            }            else            {                pageStr += "<li><a>...</a></li><li><a href=\"" + UrlHead + (currentPage + 1).ToString() + UrlFoot + "\" title=\"下一页\">下一页 »</a></li>";                pageStr += "<li><a href=\"" + UrlHead + PCount.ToString() + UrlFoot + "\" title=\"尾页\">尾页 »</a></li>";            }           // pageStr += "</div>";            return pageStr;        } 


我引用的时候string UrlHead, string UrlFoot 没看懂

DataTable dt = GetDataReader(strsql);
GridView1.DataSource = dt;
后如何引用分页






[解决办法]
PageList(int PageSize, int RCount, int currentPage, string UrlHead, string UrlFoot)
PageSize、每页的数量
RCount、总数量
currentPage、当前页
UrlHead、连接的开始地址。如。你当前的页面是:index.aspx。就写上:index.aspx?page=
UrlFoot、连接的结束。也可以说。又加的参数可以写在这里。如:经常做的搜索:key=xxx就写上:&key=xxx

最后的连接结果就是:index.aspx?page=这里的参数是通过这个函数里面生成的&key=xxx

读书人网 >asp.net

热点推荐