Изменение стиля ListGrid

Я хочу пометить определенные строки моего ListGrid разными цветами фона. Моя основная проблема заключается в том, как получить список объектов ListGridRecord после извлечения данных из источника данных. Я использую DataSource, и у меня есть поле, определенное в DataSource, на котором я буду основывать решение о том, как раскрасить конкретную запись.

Я бы повторил все ListGridRecord после того, как источник данных вернет данные, а затем использовал бы этот атрибут:

ListGridRecord.customStyle

person azec-pdx    schedule 15.08.2013    source источник
comment
Проверьте stackoverflow.com/a/16283333/2208271. Также можно использовать другие атрибуты CSS для установки цвета фона и т. д.   -  person Sithsu    schedule 15.08.2013


Ответы (1)


Вы можете использовать getCellCSSText или getBaseStyle следующим образом:

getCellCSSText: function (record, rowNum, colNum) {
                if ((this.getFieldName(colNum) == "OBJ_NAME") || (this.getFieldName(colNum) == "OBJ_DESC")  || (this.getFieldName(colNum) == "OBJ_KIND_NAME") || (this.getFieldName(colNum) == "FATHER_NAME") ){
                    if (record.OBJ_ACTIVE == false) {
                        return "color:red;text-decoration:line-through;font-style:italic;";
                        }
                }
            }

Вот пример: http://smartclient.com/#replaceStyle

person SBarney    schedule 03.03.2014