1
我使用的是ExtJs 3.4,我有一個TreeGrid (Ext.ux.tree.TreeGrid)
列模型。Extjs 3.4 Tree Grid按指定列進行默認排序
當您點擊每一列的標題時,排序與TreeGridLoader
帶來的數據非常吻合,但我想要sort by a default specified column
。 有沒有辦法做到這一點?我想指定,就像我說的我沒有商店,而是我有一個TreeGridLoader定義。
UPDATE
感謝wes
我的問題的最佳(和一般)的解決方案是:
// simulate click on order number and order by this column
var treeGrid = Ext.getCmp('siteStructureGrid');
var index = 0;
for (var i = 0; i<treeGrid.columns.length; i++){
if (treeGrid.columns[i].id == 'orderNumberColumn'){
index = i;
}
}
var column = treeGrid.columns[index];
treeGrid.fireEvent('headerClick', column);
是的,這是一個很好的方法,它的工作原理...它有點硬編碼,但它的作品(至少直到我找到另一種解決方案)...謝謝!此外,它會更好,如果它是一種方式來獲得列索引在樹形網格中的ID,而不是每次我添加另一列時,我必須小心增加排序列的索引 – spauny 2012-04-02 08:53:40
我認爲這是一個可悲的後果'TreeGrid'從'TreePanel'擴展而不是'GridPanel'。您不會像'getColumnByID'那樣獲得任何列處理便利。缺乏適當的多繼承模型,對於他們添加到不受支持的擴展中可能只是太多工作。 – wes 2012-04-02 15:32:16
是的,我看到TreeGrid擴展了TreePanel,可悲的是......我用'treeGrid.columns [i] .id'找到了我的列id的索引,用最通用的解決方案更新了我的問題。謝謝! – spauny 2012-04-03 07:15:59