C# 自定义剑道UI树状视图构造

C# 自定义剑道UI树状视图构造,c#,kendo-ui,treeview,kendo-treeview,C#,Kendo Ui,Treeview,Kendo Treeview,我想建立一个混合树,显示整个系统的全局视图。 该系统是一个内容管理系统,但它还具有其他功能,可以从构成我的全局API的“OData上下文集合”中进行管理 因此,我试图找出如何创建一个层次化的数据源,它可以根据节点类型和少量动态模型元数据处理不同的URL 例如 我的框架中有API函数,允许我做 my.api.get("Context/Type", function(odataCollectionResult) { ... }); 我也知道剑道用户界面支持做一些类似 var viewMo

我想建立一个混合树,显示整个系统的全局视图。 该系统是一个内容管理系统,但它还具有其他功能,可以从构成我的全局API的“OData上下文集合”中进行管理

因此,我试图找出如何创建一个层次化的数据源,它可以根据节点类型和少量动态模型元数据处理不同的URL

例如

我的框架中有API函数,允许我做

my.api.get("Context/Type", function(odataCollectionResult) {
     ...
});
我也知道剑道用户界面支持做一些类似

var viewModel = new kendo.data.HierarchicalDataSource({ 
   type:'odata-v4',
   ...
});

$("#tree").kendoTreeview({ dataSource: viewModel ... });
。。。但我的问题是

如何设置剑道树视图,以便绑定到调用自定义展开和折叠函数的自定义数据源,以便根据我所知道的有关节点表示的内容的更复杂的内容做出决策

我需要这样做,因为根据节点类型,它的子节点将来自不同的端点,所以我不能只使用OData数据源

我正试图做这样的事情,但我似乎无法让它工作

var viewModel = {
     data: [],
     expand: function(node) {
          var myParams = { endpoint: "Context/Type", childNodeType: "Foo/Bar" };
          my.api.get(myParams.endpoint, function(data) {
              node.data.children = buildNodes(myParams.childNodetype, data);
          });
     },
     collapse: function(node) {
         ...
     }
   }
}

$("#myTree").kendoTreeview({ 
    dataSource: viewModel, 
    events: { onExpand: viewModel.expand, onCollapse: viewModel.collapse } 
});

有人这样做过吗?或者对我如何让它工作有一些建议吗?

好的,我现在意识到这个问题的愚蠢,因为我不知怎么设法没有找到这个

。。。我想我现在有了所有我需要做的事情