The group paging functionality allows you to load groups on demand and page through the groups at the same time.
By default, the groups are rendered collapsed and each row signifies one item from the page. When you expand a group row the grid inserts new rows to the current page or moves them to the next one if they do not fit the PageSize()
specified, followed by the rest of the group rows.
To enable group paging, use the GroupPaging()
method as part of the data source configuration, add a Group()
and a PageSize()
to see the result.
.DataSource(dataSource => dataSource
.Ajax()
.GroupPaging(true)
.PageSize(50)
.Read(read => read.Action("AllCustomers", "Grid"))
.Group(x =>
{
x.Add(y => y.City);
})
)
Group paging can be used with virtual scrolling. This further improves the performance because the grid only renders as many rows as its page size. When a group row is expanded, the grid rows content is refreshed to show the new rows within the current page.
All limitations of the virtual scrolling functionality apply.
Using with PagingWhen you use group paging with paging, the grid pager updates its total based on the current number of rows. Two kinds of paging occur:
The built-in data source types
use server operations by default. To facilitate the group paging functionality, the grid data source sends the following additional parameters: take
, skip
, groupPaging
. When a row is expanded, one or two requests will be issued.
filter
parameter containing the group and subgroup value for which the items are requested.includeSubGroupCount
parameter prompting that the response must include the total of items in the sub groupThe expanded state of groups is preserved during paging only, but not if sort or filter are applied.
Known LimitationsRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4