UniDBTreeGrid控件在数据更新之后,总是会自动折叠,我想要让它既更新了数据,又不自动折叠。
解决的办法如下:
UniDBTreeGrid -> ClientEvents ->
1. UniEvents -> function beforeInit:
function beforeInit(sender, config) { sender.expandedNodes=[]; }
2. ExtEvents -> function store.beforeload
function store.beforeload(store, operation, eOpts) { var me=this.grid; me.expandedNodes=[]; me.getRootNode().cascadeBy(function(node) { if (node.data.expanded) { me.expandedNodes.push(node.data.id) } }); }
3. ExtEvents -> function store.nodeappend
function store.nodeappend(sender, node, index, eOpts) { if (this.grid.expandedNodes && this.grid.expandedNodes.indexOf(node.data.id)!=-1) { if (node.parentNode.data.expanded) { node.expand() } else { node.data.expanded = true }