我有一个要求,列必须是网格内的组合框。
第一种方式 进入物品——
items :[{width : 500,
margin : '5 5 5 5',
xtype : 'gridpanel',
store :'some_store_name',
sortableColumns : false,
selType : 'cellmodel',
plugins : [ {
ptype : 'cellediting',
clicksToEdit : 1
} ],
columns : [ {
text : '<b>Column_one</b>',
dataIndex : 'index_one',
flex : 1
},
{text : '<b>choose a value</b>',
dataIndex : 'index_two',
flex : 1,
editor : {
xtype : 'combobox',
store : 'some_store_name',
queryMode : 'local',
displayField : 'label',
valueField : 'label'
}}]}]
这以正确的方式工作。唯一的问题是,用户必须单击网格才能知道它是一个组合框。我应该使用 CSS 并设置一个属性来说明网格内的这个特定列应该像一个组合吗?还有其他方法吗?
第二种方式 不使用插件编辑器,我们可以使用渲染器函数并返回由商店填充的组合框的 xtype。如果我在一个网格中有 3 列并且要求说这个组合应该在第二列中,那么就有一个错误。当我单击组合时,选择一个值并移至第三列以更改文本或输入/编辑类型(文本框或某些组件)的列,组合框值消失。为什么会这样?
{ dataIndex : 'values', text : '<b>Status</b>', xtype : 'componentcolumn',
flex : 2,renderer : function(value) {return { name : 'some_name',store : 'some_store', value : value,xtype : 'combobox',displayField : 'y',valueField : 'x', queryMode : 'local'};}}}
欢迎任何建议。谢谢你 !