在网格面板的a列中,我使用组合框作为编辑器和渲染器来显示值:
editor: {
xtype: 'combobox',
alias: 'bienTypeCombobox',
store: 'BienTypesStore',
valueField: 'id_bien_type',
displayField: 'nom',
autoHeight: true,
editable: false,
autoSelect: true,
allowBlank: false
},
renderer: function (value, metaData, record, rowIndex, colIndex, store, view) {
var display = '';
Ext.data.StoreManager.get("BienTypesStore").each(
function (rec) {
if (rec.get('id_bien_type') === value) {
display = rec.get('nom');
return false;
}
});
return display;
}
因此,当编辑单元格时,将显示组合框,当未编辑单元格时,将显示此组合框的displayField。
我的问题是,现在,当我点击此列的标题时,行按组合框的valueField排序。
我想让用户能够通过组合框的displayedField对此列进行排序。
请帮忙,谢谢
答案 0 :(得分:0)
我认为没有简单的解决方案。我能想到的唯一方法是:
在模型中创建一个虚拟字段(基本上带有显示字段)。为此虚拟字段创建转换函数,因此在设置实数值字段时会更新。
在网格中使用此虚拟字段,无需额外呈现
对此字段使用编辑器,valueField和displayField都指向此字段。