与ExtJs4中的ExtJs3 Ext.grid.ColumnModel
相同的是什么?
我想要做的是隐藏一个列,我在ExtJs3中执行了类似的操作:
grid.colModel.setHidden(1, true);
答案 0 :(得分:16)
您可以使用Ext.grid.column.Column的setVisible方法隐藏/显示列:
grid.columns[1].setVisible(false);
答案 1 :(得分:3)
如果您的列索引发生更改,其他答案可能会出现问题。
这是另一种解决方案:
在列定义上设置itemId:
{
itemId: 'myActionColumn',
xtype: 'actioncolumn',
width: 50,
items: [ ...
}
然后隐藏:
grid.down('#myActionColumn').hide();
答案 2 :(得分:2)
Ext.grid.header.Container
Ext.panel.Table的代码:
headerCtCfg = me.columns || me.colModel,
...
if (headerCtCfg instanceof Ext.grid.header.Container) {
me.headerCt = headerCtCfg;
me.headerCt.border = border;
me.columns = me.headerCt.items.items;
}
所以你可以使用
grid.columns[i].hide()/show()
答案 3 :(得分:0)
另一种解决方案更灵活:
grid.down("[dataIndex="+di+"]").setVisible(v);
您可以为dataIndex
等其他属性更改name
。