我正在使用
PageIndexChanging
事件来处理 C# 中的 GridView 分页。但不知道如何在那里使用 PageSize/PageNumber/PageCount 。换句话说,我的代码被迫始终返回所有数据。请注意以下代码:
protected void grdList_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
grdList.PageIndex = e.NewPageIndex;
grdList.DataSource = MyGetData();
grdList.DataBind();
}
现在如何在这段代码中使用真正的分页?
请注意,
MyGetData
也有一个重载,它也会得到 PageIndex
和 PageSize
。
更新
我也设置了
PageSize
并启用了 AllowPaging
。我知道如果我使用声明性数据绑定,我应该向 GridView 提供所有数据的计数。问题是如何在这个方法中使用计数。
更新2 看来我需要的这样的东西是不可能的,参考无数据源控制的高效Gridview分页问题
如果您的
MyGetData
方法已经接受 pageindex 和 pagesize,那么您需要的是:
protected void grdList_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
grdList.PageIndex = e.NewPageIndex;
grdList.DataSource = MyGetData(e.NewPageIndex, grdList.PageSize);
grdList.DataBind();
}
但这似乎有点太简单了,所以我可能在这里遗漏了一些东西。