1
votes
  • The store is Ext.data.TreeStore, and the grid is Ext.tree.Panel. We built a tree before from backend and passed it to the treeStore. So when I expanded a row by a column, this column value isn't shown in its child nodes.
  • Now I use lazyfill to load data of a node once and I want to hide those column text where its parent is expanded by.How can I do this if I've managed to get the row and colomn indexes of the cell?
  • The following code is inside the listeners of the treeStore:

    load: function(treestore, node, records, successful, eOpts) {
         //get the column and row indexes of a node
    },
    datachanged: function(view, eOpts){
         //??select the cell with column and row indexes and hide it.
    } 
    

Thanks in advance.

1

1 Answers

0
votes

This is impossible, because the returned data contains no information of column indexes which are generated by extjs. So there's no way of hiding certain columns in load or datachanged function where you have only pure data.

The solution is to delete those data from backend and pass parent nodes of the node you clicked on to backend to process. So you're still building a tree but one node at a time.