Подобный вопрос к Kendo ui Пейджинг на сетке . У меня есть 3000 предметов, которые можно вернуть в сетку. Фильтрация может уменьшить это до нуля. Я хочу иметь возможность разместить 3000 элементов в сетке и вернуть только, скажем, 50 элементов, которые появляются на каждой странице (для любого данного фильтра).
<div class="col-md-10">
<div class="clearfix" name="funddetail" id="funddetail" style="display: inline-block">
@(Html.Kendo().Grid<InvestmentViewModel>()
.Name("grid")
.ToolBar(tools =>
{
tools.Create();
})
.HtmlAttributes(new { @class = "k-widget k-grid" })
.Selectable()
.Columns(columns =>
{
columns.Bound(c => c.EMSFundId).Hidden(true);
columns.Bound(c => c.FundId).Hidden(true);
columns.Bound(c => c.ManagerId).Hidden(true);
columns.Bound(c => c.Status).Hidden(true);
columns.Bound(c => c.ManagerId).Hidden(true);
columns.Bound(c => c.ManagerName).Sortable(true).Title("Entity").Filterable(false);
columns.Bound(c => c.FundName).Sortable(true);
columns.Bound(c => c.AssetClass).Sortable(true);
columns.Bound(c => c.Strategy).Sortable(true);
columns.Bound(c => c.SubStrategy).Sortable(true);
columns.Bound(c => c.OwnerFullName).Sortable(true);
columns.Bound(c => c.StatusDescription).Sortable(true).Filterable(f => f.Cell(c => c.Operator("startswith").SuggestionOperator(FilterType.StartsWith)));
})
.Resizable(r => r.Columns(true))
.Scrollable()
.Sortable(sortable => sortable
.AllowUnsort(false)
.SortMode(GridSortMode.SingleColumn))
.Pageable(pageable => pageable
.Refresh(true)
.PageSizes(new int[] { 50, 100, 500 })
.ButtonCount(10))
.DataSource(dataSource =>
dataSource
.WebApi()
.PageSize(50)
.Model(model =>
{
model.Id(p => p.FundId);
})
.Events(events => events.Error("error_handler"))
.Read(read => read.Action("GetInvestmentsAsync", "Views"))
)
)
</div>
Я настроил веб-API для передачи Page и размера страницы в службу. Я могу эффективно запросить модель данных и вернуть только ту страницу, которую запрашивает сетка кендо (например, 50 строк на странице 3). Вот где я застрял: сетка кендо показывает только одну страницу из 50 элементов. Как мне сказать, что в сетке всего 3000 элементов и 10 возможных страниц?