【原创】asp.net webdiyer AspNetPager控件分页码改变时,序号列从新从1开始问题的解决

 

长话短说,首先看repeater 配合 webdiyer AspNetPager使用时webdiyer AspNetPager属性设置代码。

 <webdiyer:AspNetPager ID="AspNetPager1" runat="server" CssClass="paginator" OnPageChanging="AspNetPager1_PageChanging"
        CurrentPageButtonClass="cpb" FirstPageText="首页" LastPageText="尾页" NextPageText="下一页"
        PrevPageText="上一页" ShowMoreButtons="true" ShowCustomInfoSection="Right" CustomInfoTextAlign="Right"
        LayoutType="Table" ShowPageIndexBox="Never" SubmitButtonText="跳转" PageSize="18"
        CustomInfoHTML="共%PageCount%页/第%CurrentPageIndex%页,每页%PageSize%条,总记录数:%RecordCount%"
        UrlPaging="True" AlwaysShow="true">
    </webdiyer:AspNetPager>

 

从 上边代码可看出,此分页传值方式为URL传值。当使用<%#Container.ItemIndex+1%>来生成序号时,第二页序号依然从1开始,理想情况下的话,应该从3开始。

  【C#】 后台处理方法:

 1         /// <summary>
 2         /// 序号生成
 3         /// </summary>
 4         /// <param name="ItemIndex">数据Index</param>
 5         /// <returns></returns>
 6         public string ReturnOrder(int ItemIndex)
 7         {
 8             int page = 0;
 9             if (Request.QueryString["page"] != null)
10             {
11                 page = int.Parse(Request.QueryString["page"]) - 1;
12             }
13 
14             int strXM = page * AspNetPager1.PageSize + ItemIndex;
15             return strXM.ToString();
16         }

【html】前台调用代码:

1       <td style="white-space: nowrap" align="center">
2           <%# ReturnOrder(Container.ItemIndex+1)%>
3         </td>

 

效果:

posted @ 2015-01-14 08:36  火中泪  阅读(801)  评论(0编辑  收藏  举报