1

http://www.aspsnippets.com/Articles/Custom-Paging-in-ASPNet-GridView-using-SQL-Server-Stored-Procedure.aspx

上記のチュートリアルに基づいて、グリッドビューでカスタム ページングを作成できましたが、ページに表示されるページ番号を制限したいと考えています。例 1 ページあたり 10 行の設定で表示する 10,000 レコードがある場合、ページ リンクは 1 ~ 1000 ページ リンクをロードしますが、これは理想的ではありません。

出力を次のようにするにはどうすればよいですか。

最初 1 2 3 4 5 6 7 8 9 10 最後

自動調整

最初 2 3 4 5 6 7 8 9 10 11 最後

等々。

すべてのページを表示する設定を作成するコードは次のとおりです

private void PopulatePager(int recordCount, int currentPage)
{
    double dblPageCount = (double)((decimal)recordCount / decimal.Parse(ddlPageSize.SelectedValue));
    int pageCount = (int)Math.Ceiling(dblPageCount);
    List<ListItem> pages = new List<ListItem>();
    if (pageCount > 0)
    {
        pages.Add(new ListItem("First", "1", currentPage > 1));
        for (int i = 1; i <= pageCount; i++)
        {
            pages.Add(new ListItem(i.ToString(), i.ToString(), i != currentPage));
        }
        pages.Add(new ListItem("Last", pageCount.ToString(), currentPage < pageCount));
    }
    rptPager.DataSource = pages;
    rptPager.DataBind();
}
4

3 に答える 3