解决UniDBTreeGrid在数据更新后自动折叠的问题

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
        } 
        
    }
}
通过以上三个步骤即可解决问题。 

你可能感兴趣的:(UniGui,java,前端,javascript)