It may be a year late, but as they say, better late than never. I stumbled upon this unanswered question and thought I'd share a solution:
To begin, create your store:
const myDataStore = Ext.create('Ext.data.Store', {
storeId:'myDataStore',
fields: ['name', 'value'],
data: [
{'name':'item1', 'value':'value for item 1'},
{'name':'item2', 'value':'value for item 2'},
{'name':'item3', 'value':'value for item 3'},
{'name':'item4', 'value':'value for item 4'}
]
});
Next, in the configuration for your combo, assign the created store. The following panel (fp) is a basic form to showcase the sample combo.
const fp = {
xtype : 'form',
frame : true,
labelWidth : 110,
items:
{
xtype: 'combobox',
fieldLabel: 'Custom Combo',
displayField: 'name',
width: 320,
store: myDataStore, // ASSIGN STORE TO COMBO
queryMode: 'local',
typeAhead: true,
emptyText : '-select-',
listeners : {
//add item selection click events here
}
}
}
Create a window to contain the panel
new Ext.Window({
title : '',
layout : 'fit',
height : 180,
width : 320,
border : false,
items : fp
}).show();
Check out the working example on Fiddle: