2011-05-23 23 views
5

Çok fazla sütun (imo) içerecek şekilde büyütülen bir ExtJS Izgara Panelimiz var, bu yüzden bazı verileri ana satırın "alt sıralarına" dahil etmek istiyorum. Gibi:ExtJS Grid Panel - Satır başına birden çok "satır"?

Veri1 | Data2 | Data3 | Data4 | Data5
   
ürününü içeren bazı ek veriler Data1 | Data2 | Data3 | Data4 | Data5
    Ben expander Eklentinin farkındayım, ama biz genişletmek/daraltmak işlevselliği gerek olmazdı ve her zaman alt sıraları açık ihtiyacım

yayılan bazı ek veri.

Herhangi bir düşünce ya da fikir?

Şimdiden teşekkürler.

cevap

16

Eğer ExtJS-4 kullanıyorsanız,

// ... 
var rowBodyFeature = Ext.create('Ext.grid.feature.RowBody', { 
    getAdditionalData: function(data, rowIndex, record, orig) { 
     var headerCt = this.view.headerCt, 
     colspan = headerCt.getColumnCount(); 
     return { 
      rowBody: "HELLO WORLD!", // do something with record 
      rowBodyCls: this.rowBodyCls, 
      rowBodyColspan: colspan 
     }; 
    } 
}); 

Ext.create('Ext.grid.Panel', { 
    // ... 
    features: [rowBodyFeature] 
    // ... 
}); 

ExtJS-3 kullanıyorsanız, deneyin:

new Ext.grid.GridPanel({ 
    //... 
    viewConfig: { 
     enableRowBody: true, 
     getRowClass: function(record, rowIndex, p, store) { 
      p.body = 'HELLOW WORLD: ' + record.get('attribute'); 
      return 'x-grid3-row-expanded'; 
     } 
    } 
+0

Örnekler, [burada (ExtJS 4.2.1 dahil diğer dokümanlar, bulabilirsiniz)] (http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.grid.feature.RowBody) –

0

Yapmanız gereken şey, genişletici eklentisini kullanarak iç içe geçmiş bir ızgara uygulamaktır. Tıklama veya genişlemede, satırın kimliğini alt satırları yüklemek için anahtar olarak kullanabilirsiniz.

İlgili konular