Kendo ui 使用剑道的可分页树状视图?

Kendo ui 使用剑道的可分页树状视图?,kendo-ui,Kendo Ui,假设我在树视图中显示分层数据。一个特定的节点可能有1000个子节点,我不想全部显示它们,所以我想在树中对节点进行分页。我将显示10个孩子,如果有更多,用户需要单击下一个/上一个按钮来查看他们。我已经让sql分页工作,但我无法让treeview执行我想要的操作 如果我这样做,我的控制器将获得正确的节点id和页面id,并返回正确的结果页面。但是树视图只显示了我刚才要求的1页儿童;层次结构的其余部分所有父级都将丢失: $("#btnNextPage") .click(function () {

假设我在树视图中显示分层数据。一个特定的节点可能有1000个子节点,我不想全部显示它们,所以我想在树中对节点进行分页。我将显示10个孩子,如果有更多,用户需要单击下一个/上一个按钮来查看他们。我已经让sql分页工作,但我无法让treeview执行我想要的操作

如果我这样做,我的控制器将获得正确的节点id和页面id,并返回正确的结果页面。但是树视图只显示了我刚才要求的1页儿童;层次结构的其余部分所有父级都将丢失:

$("#btnNextPage")
    .click(function () {
        var selectedNode = treeview.select();
        var selectedNodeID = treeview.dataItem(selectedNode).id;
        ds.read({
            LoopID: selectedNodeID,
            page: ds.page() + 1
});
如果我这样做,我可以保留层次结构,我的控制器也会被调用,但我不知道如何传入我请求的页面

$("#btnNextPage")
    .click(function () {
        var selectedNode = treeview.select();
        var testnode = treeview.dataItem(selectedNode);
        testnode.loaded(false);
        testnode.load();
});

我一直在使用ASP.NETWebForms,这是我第一次尝试jquery和kendo。有什么想法吗?

当您更改页面时,剑道数据源将用从服务器检索的新页面替换内存中的记录


您需要将以前加载的所有页面保留在一个单独的可观察数组中,并将您的treeview绑定到该数组。

通过Telerik人员的指示,我实现了这一点。诀窍是使用children属性,该属性是所选节点的子节点的数据源。因此,单击“下一页”按钮时,我会执行以下操作:

parentNodeDataItem.children.read{ LoopID:parentNodeID, 页码:当前页码 };


这产生了我想要的行为,即在不丢失祖先层次结构的情况下刷新子级。

请举个例子好吗?我仍然不清楚如何从这里开始。