Для TreeGrid нет API, потому что это расширение пользователя (Ext.ux). Вам придется взглянуть на исходный код для получения дополнительной информации. Если у вас нет источника в вашем проекте, перейдите на следующую страницу:
http://dev.sencha.com/deploy/dev/examples/treegrid/treegrid.html
и нажмите «Просмотр источника» Ctrl + U
. Оттуда вы можете связаться с TreeGrid.js
и другими файлами поддержки js.
Я заметил, что TreeGrid
расширяет TreePanel
, что, в свою очередь, расширяет старый Panel
. Похоже, что нет никаких ссылок на GridPanel
, поэтому я не верю, что есть какой-либо визуализатор столбцов, как вы ожидаете, если бы использовали этот компонент. Из того, что я понял, пример (tree-grid.js) вместо этого использует XTemplate для рендеринга данных столбца:
var tree = new Ext.ux.tree.TreeGrid({
title: 'Core Team Projects',
width: 500,
height: 300,
renderTo: Ext.getBody(),
enableDD: true,
columns:[{
header: 'Task',
dataIndex: 'task',
width: 230
},{
header: 'Duration',
width: 100,
dataIndex: 'duration',
align: 'center',
sortType: 'asFloat',
// ================================== //
// this acts as your column renderer
tpl: new Ext.XTemplate('{duration:this.formatHours}', {
formatHours: function(v) {
if(v < 1) {
return Math.round(v * 60) + ' mins';
} else if (Math.floor(v) !== v) {
var min = v - Math.floor(v);
return Math.floor(v) + 'h ' + Math.round(min * 60)
+ 'm';
} else {
return v + ' hour' + (v === 1 ? '' : 's');
}
}
})
// ================================== //
},{
header: 'Assigned To',
width: 150,
dataIndex: 'user'
}],
dataUrl: 'treegrid-data.json'
});
Попробуйте использовать XTemplate для своих целей. Если это не отвечает вашим потребностям, вам придется предоставить больше информации.