Несколько ошибок:
renderTo
не должен использоваться двумя компонентами и указывать на один и тот же div. Это не правильный путь.
Вы можете визуализировать все это, даже не используя элементы. Попробуйте следующий код:
var CListingEditorGrid = new Ext.grid.EditorGridPanel({
//normally, we don't assign ids if there is no obvious reason to use this.
//id: 'CListingEditorGrid',
//We don't need this as this grid will be rendered into the window
//renderTo: 'grid_div',
viewConfig: {
//forceFit is used by the GridView, so to have the GridView
//fits into the grid, not grid fits into the window
forceFit: true
},
store: CDataStore,
cm: CColumnModel,
//You don't need to have this
//sm: selmodel,
enableColLock: false,
clicksToEdit: 1,
//The default sm is already multi-selectable so you could probably
//remove this selModel.
/*
selModel: new Ext.grid.RowSelectionModel({
singleSelect: false
}),
*/
plugins: [filters],
bbar: new Ext.PagingToolbar({
store: CDataStore,
pageSize: 10,
plugins: [filters]
}),
tbar: [{
text: 'Add Contact',
tooltip: 'Add Contact',
handler: displayFormWindow
}, {
text: 'Delete Contact',
tooltip: 'Delete Contact',
handler: deleteContacts
}]
});
var CListingWindow = new Ext.Window({
//id: 'CListingWindow',
title: 'Contacts List',
//closable: true,
width: 1000,
height: 500,
layout: 'fit',
items: [CListingEditorGrid],
//renderTo: 'grid_div',
resizable: false
});
//Show this window
CListingWindow.show();
Обновите нас, если это работает. Я еще не проверял это. Но сетка должна хорошо соответствовать окну с параметром layout:'fit'
.