0

我在我的 .net aspx 页面中使用 Telerik radgrid。我想实现自定义分页。但为此,我最初没有总记录数。当用户在到达最后一页后单击下一页链接时,希望从服务器获取更多数据。

示例:如果最初在第一页上仅显示 10 条记录。如果我单击“下一步”链接,它应该获取下一组数据。

但问题是:如果没有更多下一页,“下一步”按钮不会触发 OnCommand 或 OnItemCommand 事件。

所以问题是当最初不知道记录总数时如何处理分页?无论网格是否已经显示最后一页,要处理哪个 radgrid 事件以获取“下一步”按钮单击事件。

4

1 回答 1

0

当网格已经在最后一页时,我没有收到任何在单击“最后一页”按钮时触发的事件。

因此,作为一种解决方法,我在最后添加了一个虚拟页面。单击虚拟页面时,它将从服务器获取下一组记录。

为了使用 RadGrid 实现自定义分页,我们执行以下操作:
1. 在 aspx 页面中为 RadGrid 控件添加以下
属性 AllowPaging="true"
b. AllowCustomPaging="true"
c. VirtualItemCount = 服务器 2 上的总记录
。在后面的代码中,实现 NeedDataSource 事件,该事件在需要时从服务器获取数据。

这里我们事先并不知道VirtualItemCount。所以我在页面的 OnPreRender() 函数中设置了 VirtualItemCount。
VirtualItemCount = 没有。网格中的记录数 + RadGrid 的 PageSize
这会在网格上的页码末尾添加一个虚拟页面。

单击虚拟页面从服务器获取下一组数据。VirtualItemCount 将再次根据从服务器接收到的当前记录数和页面大小在 OnPreRender() 函数中更新。

于 2014-03-19T11:17:22.277 回答