我有一个带有一组列的 Ext.grid.Panel
。这个网格被过滤,根据过滤器,我想为某一列定义一个编辑器。
我的表格:
Ext.define('Mb.view.MyPanel', {
extend: 'Ext.grid.Panel',
columns: [
{text: 'Order #', dataIndex: 'id'},
{text: 'Action', dataIndex: 'type',
renderer: function(value){
if(value == 'BP') return Lang._('Veuillez choisir')
return ''
}
},
现在我想做的是:
var panel = Mb.app.getView('MyPanel');
if (condition == true) {
panel.getColumns[1].setEditor({
xtype: 'textfield',
...
})
}
很明显,方法
getColumns
和setEditor
不存在。因此,我需要另一种方法来激活该列上的编辑器。我没有找到访问列定义以修改它们并重新渲染网格的方法。
你能给我一个方向提示吗?谢谢。
getEditor(record)
并返回行中喜欢的字段。但是我需要在哪里定义它?作为列的配置选项吗?这也意味着可以基于行使用不同的编辑器,对吗? - Lorenz MeyersetEditor
方法时,我需要引用该列,但我不知道如何从网格对象中获取它。 - Lorenz Meyer