2

我试图从一个巨大的数据库中读取时实现分页。当用户移动到窗口外的页面时,我获取下一组记录并为 9-10 页填充表格。问题是,刷新数据源后,我无法将 PageIndex 重置为 0,刷新后它仍然在最后一页。我的代码如下:

protected void AccountQueueGrid_PageIndexChanged(object sender, Telerik.Web.UI.GridPageChangedEventArgs e) 
{
int newWindowNumber = currentWindowNumber() + ( e.NewPageIndex / (windowSize / PageSize));
            if (newWindowNumber != currentWindowNumber())
            {
                PopulateAccountQueueGrid(newWindowNumber, true);
                AccountQueueGrid.CurrentPageIndex = 0;
                AccountQueueGrid.Rebind();

            }
}

PopulateAccountQueueGrid 获取新数据并设置为 DataSource 并调用 DataBind。那部分工作正常。但是设置 CurrentPageIndex 然后重新绑定不会将其重置为 0。尝试设置 AccountQueueGrid.MasterTableView.CurrentPageIndex 也行不通。

AllowPaging 和 EnableViewState 设置为 true。

4

1 回答 1

0

在绑定以下示例之前将您的页面索引设置为0(零)datasource 对我来说非常有效。

AccountQueueGrid.CurrentPageIndex = 0;
AccountQueueGrid.DataSource = dsList.Tables[0];
AccountQueueGrid.Rebind();
于 2018-01-15T10:13:11.723 回答