2015-06-10 1 views
0

ExtJs 4:
Как я могу динамически отображать и скрывать столбцы сетки, в которой используется ArrayStore?
Я нашел это решение
ExtJs 4: How do I hide/show grid columns on the fly?
Я знаю SetVisible (правда | ложно) требуется для каждого столбца, но когда я прошу grid.columns я получаю массив объектов , и как объекты они надевают» t имеет функцию setVisible.
Если я использую Ext.getCmp (..) для каждого конкретного столбца, используя идентификатор столбца, то возвращаю объект Column, и я могу получить доступ к функции SetVisible .., но также возможно получить массив из этих объектов столбца из сетки?ExtJs 4: скрывать/показывать столбцы сетки с сеткой, которая использует ArrayStore

ответ

0

Решение в ExtJs 4: How do I hide/show grid columns on the fly? должно работать на вас. Какую именно версию ExtJS вы используете?

При использовании grid.columns массив объектов, которые вы получили, являются объектами столбцов. Поэтому следующий код (как указано в связанном ответе) должен работать.

grid.columns[0].setVisible(false); 

Отъезд GridPanel Fiddle для живого примера.

0

Вы должны делать что-то вроде этого:

var myGrid = Ext.getCmp("Your_GRID"); 
var cols = myGrid.columns; 
//index of the column to hide. 
cols[index].setVisible(!cols[index].isVisible()) 

Вот мой рабочий пример в скрипкой: https://fiddle.sencha.com/#fiddle/oca

+0

Это странно, это именно то, что я сделал, но Chrome говорит, что «SetVisible» не является функция и инструменты разработчика отображают col для меня как «Object». Независимо от этого, знаете ли вы, можно ли изменить ширину сетки после hide/show, чтобы она соответствовала количеству отображаемых столбцов? –

+0

Thats странная версия ext, что я сделал скрипку, использует 4.2.0, вы используете старую версию ... но я думаю, что это тоже должно быть в старых версиях. Я также обновил свою скрипку (https://fiddle.sencha.com/#fiddle/oca), чтобы столбцы изменяли ее размеры, когда столбец скрыт. Это достигается с помощью [flex] (https://docs.sencha.com/extjs/5.1/5.1.1-apidocs/#!/api/Ext.Component-cfg-flex) – Cyril

Смежные вопросы