我需要动态显示/隐藏网格的列,但似乎ExtJs 4没有实现的方法.
在以前的版本中,我应该使用columnModel,它不再存在.
刚刚获得grid.columns[index]和/ hide()或show()不影响网格.
使用grid.columnManaget.getColumns()[index].hide()可以真正隐藏列,但不能再次显示(因为getColumns()之后不返回该列).
小智 10
以下应该有效:
Ext.create('Ext.grid.Panel', {
title: 'Simpsons',
id: 'simpsons',
store: Ext.data.StoreManager.lookup('simpsonsStore'),
columns: [
{ text: 'Name', dataIndex: 'name' },
{ text: 'Email', dataIndex: 'email', flex: 1 },
{ text: 'Phone', dataIndex: 'phone' }
],
height: 200,
width: 400,
renderTo: Ext.getBody(),
dockedItems:[{
xtype:'button',
handler: function() {
if(Ext.getCmp('simpsons').columns[0].isVisible())
Ext.getCmp('simpsons').columns[0].setVisible(false);
else
Ext.getCmp('simpsons').columns[0].setVisible(true);
}
}]
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26861 次 |
| 最近记录: |