0

我有一个网格,我在其中显示来自大型数据库的数据;但是我需要按部分显示数据。我的意思是,我的数据库中有一个包含 10,000 行的表,我想在页面仅加载我的 Kendo UI Grid 中的前 10 行时显示,并且当用户使用滚动并返回时进行新查询(按块,例如第二次加载时为 200-300)并显示新数据而不会丢失前一个数据。

我在 DataTables 框架中看到了一些类似的东西,但是使用 kendo 选项我无法做到这一点。如果您需要更多信息,请询问我。

4

2 回答 2

2

您正在寻找的是远程数据的虚拟化,您在 KendoUI 网站http: //demos.kendoui.c​​om/web/grid/virtualization-remote-data.html 中有一个演示,并且在此处输入链接描述中的文档。

基本上,您必须在网格中定义:

scrollable: {
     virtual: true
}
于 2012-11-16T21:45:10.400 回答
0
@model IEnumerable<KendoUIMvcApplication1.Models.SiteMonitoring>

@{
    ViewBag.Title = "Site Monitoring";
}

<h2>@ViewBag.Message</h2>

@(Html.Kendo().Grid(Model)    
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(s => s.SiteId).Groupable(false);
        columns.Bound(s=> s.SiteName);
        columns.Bound(s=>s.SiteStatus);
        columns.Bound(s => s.UpdateTime);
        columns.Bound(s=>s.FuelLevel);
        columns.Bound(s => s.BatteryStrength);
        columns.Bound(s => s.DGStatus);
        columns.Bound(s => s.ACStatus);
        columns.Bound(s => s.DoorOpen);
    })



    ***.Scrollable(scrollable => scrollable.Virtual(true).Height(280))***

    .DataSource(dataSource => dataSource
     .Ajax()
    .PageSize(2)
    .Read(read => read.Action("Index", "SiteMonitoring"))
)
)

当我向下滚动以查看下一条记录时,该页面需要无限时间来加载(实际上并未加载)。不知道是什么问题?

于 2013-03-05T11:04:44.043 回答