9

ExtJs4Ext.grid.ColumnModel中的ExtJs3相当于什么?

我想要做的是隐藏一列,我在 ExtJs3 中做了如下的事情:

grid.colModel.setHidden(1, true);
4

4 回答 4

16

您可以使用 Ext.grid.column.Column 的 setVisible 方法隐藏/显示列:

grid.columns[1].setVisible(false);
于 2011-05-18T11:00:04.977 回答
3

如果您的列索引发生变化,其他答案可能会出现问题。

这是另一个解决方案:

在列定义上设置 itemId:

{
        itemId: 'myActionColumn',
        xtype: 'actioncolumn',
        width: 50,
        items: [ ...
}

然后隐藏:

grid.down('#myActionColumn').hide();
于 2012-09-14T14:12:05.237 回答
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()
于 2011-05-20T15:42:06.840 回答
0

另一种更灵活的解决方案:

grid.down("[dataIndex="+di+"]").setVisible(v);

您可以更改dataIndex其他属性,例如name或其他。

于 2015-04-17T14:34:50.027 回答