Я пытаюсь установить GridPanel на основе ArrayStore в окне, но независимо от того, что я делаю, он выглядит просто так, без данных строки внутри:ExtJS 3.0.0: GridPanel в окне с массивом ArrayStore не передает никаких данных
Вот мой код:
var ticketsStore = new Ext.data.ArrayStore
(
{
autoDestroy: false,
remoteSort: false,
data: result,
fields:
[
{ name: 'articleId', type: 'int' },
{ name: 'heatTicketRef', type: 'string' },
{ name: 'username', type: 'string' },
{ name: 'dateLinked', type: 'date' }
]
}
);
var ticketsGrid = new Ext.grid.GridPanel({
store: ticketsStore,
id: this.id + 'ticketsGrid',
viewConfig: {
emptyText: 'No data'
},
autoShow: true,
idProperty: 'heatTicketRef',
columns: [
{ id: 'heatTicketRef', header:"Ticket ID", width: 100, dataIndex: 'heatTicketRef', sortable: false },
{ header: "User", width: 100, dataIndex: 'username', sortable: false },
{ header: "Date Linked", width: 100, dataIndex: 'dateLinked', xtype: 'datecolumn', format: 'j M Y h:ia', sortable: false }
]
});
var window = new Ext.Window
(
{
renderTo: Ext.getBody(),
id: this.id + 'linkedHeatTickets',
closable: true,
modal: true,
autoHeight: true,
width: 500,
title:'Linked Heat Tickets',
resizable: false,
listeners:
{
close: function() { // do something }
},
items:
{
style: 'padding:5px;',
items: ticketsGrid
},
buttons:
{
text: 'Close',
handler: function() {
window.close();
}
}
}
);
window.show();
Когда я отладки, я вижу, что мой «результат» объект здоров и ArrayStore имеет нужной длины:
Но GridPanel не любит данные, потому что это не в его элементов (хотя это в магазине) массива:
То немногое, что я сделал не так?
Спасибо!
set minheight to grid и попробуйте – Raghavendra
Я пробовал minHeight, к сожалению, это тоже не сработало. – lilalfyalien
попробуйте скрипку, я могу вам помочь – Raghavendra