簡體   English   中英

在asp.net的gridview中的自定義分頁

[英]Custom paging in a gridview in asp.net

我想在asp.net中為gridview進行自定義分頁,因為我的數據庫中有很多信息。 我的問題是當我生成鏈接按鈕時。 我將它們放在面板中,但是我的頁面有7000多個按鈕。 當我將它們添加到面板中時,它會在頁面的10行中顯示所有它們。 我只需要顯示10個,當我按最后一個顯示其他10個按鈕時。 我的代碼:

for (int index = 0; index < nrPages; index++)
                {
                    int pageNo = index + 1;
                    LinkButton lnk = new LinkButton();
                    lnk.Click += new EventHandler(PageChange);

                    lnk.ID = "PageLink" + pageNo.ToString();
                    lnk.CommandName = "Page";
                    lnk.Text = " " + pageNo.ToString() + " ";
                    lnk.CommandArgument = index.ToString();

                    PanelPager.Controls.Add(lnk);
                }

public void PageChange(object sender, EventArgs e)
        {
            int pageIndex = int.Parse((sender as LinkButton).CommandArgument);
            object dataSource = GetDataSource(OwnerId, null, pageIndex);
            PushData(dataSource);

        }

在這里我用我的linkBut​​ton

int nrPages = 7000;

public void RenderPageNumbers(int nextPageNo)
{
    int pageSize = 10;
    int totalPages = nrPages / pageSize;
    var startIndex = ((nextPageNo -1) * pageSize ) + 1
    for (int index = startIndex; index < startIndex + pageSize; index++)
    {
        int pageNo = index;
        LinkButton lnk = new LinkButton();
        lnk.Click += new EventHandler(PageChange);

        lnk.ID = "PageLink" + pageNo.ToString();
        lnk.CommandName = "Page";
        lnk.Text = " " + pageNo.ToString() + " ";
        lnk.CommandArgument = index.ToString();

        PanelPager.Controls.Add(lnk);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM