我目前在我的 MVC 应用程序中使用 Kendo Treeview 并将其绑定(bind)到我的 Model 属性,该属性是从 Controller 构建的列表类型。该绑定(bind)与 BindTo 方法完美配合。
我想做的无论是客户端还是服务器端,都是获取第一个父级的第一个子级,并在页面加载时应用 css k-state-selected (或其他方法来执行此操作)。但是我不确定将我的逻辑放入哪个事件中。我尝试使用 $(document).ready 但是此时 TreeView 对象尚未定义。
解决这个问题的最佳方法是什么?
谢谢。
最佳答案
您希望将逻辑放在 dataBound 事件中。将逻辑放入 TreeView 的 dataBound 事件中将确保 View 在页面上完全呈现,并且您将可以访问它的所有元素。他们讨论了 Kendo Grid View 的类似情况 here 。请参阅以下示例:
<div id="treeview"></div>
<script>
$('#treeview').kendoTreeView({
dataSource: [
{
text: 'foo',
items: [
{ text: 'bar' }
]
}
],
dataBound: function (e) {
//get the tree view...
var treeview = $('#treeview').data('kendoTreeView');
//get first parent...
var parentNode = treeview.dataSource.view()[0];
//get first child...
var childNode = parentNode.children.view()[0];
//get item to select...
var selectItem = treeview.findByUid(childNode.uid);
//expand the tree and select the item...
treeview.expand('.k-item');
treeview.select(selectItem);
}
});
</script>
关于c# - Kendo TreeView 服务器端绑定(bind)选择第一个父子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19186046/