Набор цветов фона Ext JS Grid Row - PullRequest
6 голосов
/ 28 января 2010

Как мне настроить цвет фона строки Ext JS Grid, в основном только выбранные элементы.

Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

13 голосов
/ 28 января 2010

Чтобы изменить выбранный цвет строки, вы должны переопределить соответствующий класс CSS:

.x-grid3-row-selected {
   background-color: red !important;
}

Вы также можете переопределить значение по умолчанию border-color, если хотите использовать этот класс.

Функция getRowClass, с другой стороны, предназначена для добавления статического класса CSS к строкам с использованием бизнес-логики для определения того, на какие строки это влияет. Вы также можете добиться раскраски строк таким образом, но это не повлияет на выделенный цвет строк (хотя вы могли бы также написать CSS, который бы использовал оба класса вместе для этого).

РЕДАКТИРОВАТЬ : Чтобы изменить стиль строки программным способом, вам все равно потребуется статически определить ваши стили в CSS, а затем просто динамически добавлять / удалять классы CSS по мере необходимости. Например, предполагая сетку и кнопку с идентификатором «my-btn», нажатие кнопки добавит класс (может быть определен так же, как .x-grid3-row-selected, как показано выше) к первой строке в сетке, применяя какой бы стиль ни был в классе CSS. Вы должны определить свою реальную бизнес-логику для выбора строк, но это синтаксис:

Ext.get('my-btn').on('click', function(){
    Ext.fly(myGrid.getView().getRow(0)).addClass('error');
});
2 голосов
/ 06 июля 2011

@ bmoeskau То, что вы дали, не работает со мной. Я скорее использую

grid.getView().addRowClass(rowIndex, 'red');

внутри функции onDoubleClick.

...