grid. добавить column в column
есть грид.
{ xtype: 'grid', width: 400, id: 'grid1', height: 300, columns: [ { text: 'col1', id: 'column1' }, { text: 'col2' }, { text: 'col3' }] } нашел чтобы в грид добавлялось поле var column = Ext.create('Ext.grid.column.Column', { text : 'new column' }); Ext.getCmp('grid1').headerCt.insert(0, column); а вот как добавить поле не в грид а в column? т.е. многоуровневый сделать грид? |
Я так думаю вы подобное видели
var myGrid= Ext.create('Ext.grid.Panel',{ //... columns:[ {header: 'text', columns:[ {header: 'text1'}, {header: 'text2'}, {header: 'text3'}, {header: 'text4'} ] } ] }); http://docs.sencha.com/extjs/4.2.0/#...ed-header-grid но вам такой вариант не катит, так как необходимо добавлять столбцы по какому-то событию. Поковырял, помудрил. Предположил, что для столбца необходим хидерконтейнер, так как он есть в гриде, но для column отсутствует (хотя сам по себе колюмн наследуется от хидерконтейнера. ...?) Накидал такой код myGrid.headerCt.insert(0,new Ext.grid.column.Column({header:'mainColumn',id:'mainCol',items:[{xtype:'headercontainer',id: 'hc'}]})); Ext.getCmp('hc').insert(0,new Ext.grid.column.Column({header:'subColumn',id:'subCol1'})); console.log(Ext.getCmp('hc')); Код вроде выполняется без ошибок, но к сожалению подстолбец так и не отобразился( хотя в хидерконтейнере действительно содержится запись о субколюмн может дело в том что хидерконтейнер я сажаю в items mainColumn, когда для грида не так (ну то есть в том случае когда все работает, в смысле столбец добавляется в грид) Если решите или решили уже задачу, то отпишитесь пожалуйста |
Часовой пояс GMT +3, время: 23:57. |