Вы хотите понять, как воспроизвести поведение triggerAction: 'all', так почему бы не погрузиться в код?
Вот исходный код класса ComboBox: http://docs.sencha.com/ext-js/4-0/source/ComboBox.html#Ext-form-field-ComboBox-cfg-triggerAction
Если вы посмотрите на код, то увидите, что:
1) При нажатии на триггер вызывается метод doQuery.
onTriggerClick: function() {
var me = this;
if (!me.readOnly && !me.disabled) {
if (me.isExpanded) {
me.collapse();
} else {
me.onFocus({});
if (me.triggerAction === 'all') {
me.doQuery(me.allQuery, true);
} else {
me.doQuery(me.getRawValue(), false, true);
}
}
me.inputEl.focus();
}
},
2) В методе doQuery интересный фрагменткода:
if (isLocalMode) {
// forceAll means no filtering - show whole dataset.
if (forceAll) {
store.clearFilter();
} else {
// Clear filter, but supress event so that the BoundList is not immediately updated.
store.clearFilter(true);
store.filter(me.displayField, queryString);
}
}
3) Мы видим, что вызывается метод фильтра Магазина.У вас есть ответ, правильная техника для временного удаления элементов в выпадающем списке ExtJS (как правило, в магазине) использует фильтр методов в магазине.
http://docs.sencha.com/ext-js/4-0/#!/api/Ext.data.Store-method-filter
Помните, вашлучший друг всегда документация!http://docs.sencha.com/ext-js/4-0/#