Как изменить цвет строки в зависимости от конкретного состояния столбца в сетке кендо для angular

Я хочу применить красный цвет к строке, чье значение столбца CompleteIn hours больше 24. как я могу это сделать. пожалуйста, помогите, я новичок в angular.

<kendo-grid [kendoGridBinding]="gridData">
    <kendo-grid-column field="RequestNumber" title="Request No."  
width="110" >
    </kendo-grid-column>
<kendo-grid-column field="RequestNumber" title="Request No."  width="110" >
    </kendo-grid-column>
<kendo-grid-column field="Name" title="Name."  width="110" >
    </kendo-grid-column>
<kendo-grid-column field="CompletedIn" title="CompletedIn"  width="110" >
    </kendo-grid-column>
 </kendo-grid>

person user9287106    schedule 06.02.2019    source источник
comment
пожалуйста, помогите мне, ребята   -  person user9287106    schedule 06.02.2019
comment
ДОПОЛНИТЕЛЬНЫЕ ДЕМОНСТРАЦИИ Форматирование строки сетки в пользовательском интерфейсе Kendo для сетки Angular 2   -  person Sushil Mishra    schedule 01.09.2020
comment
Демонстрация: stackoverflow.com/questions/42842858/   -  person Sushil Mishra    schedule 01.09.2020


Ответы (3)


Во-первых: вы должны добавить [rowClass] в свою сетку

<kend-grid [rowClass]="rowCallback">
</kendo-grid>

затем вам нужно добавить функцию внутри компонента и вернуть нужный класс

public rowCallback(context: RowClassArgs) {
  if (context.dataItem.someProperty) {   // change this condition as you need
    return {
      passive: true
    };
  }
}  

и, наконец, вам нужно иметь класс CSS с именем, которое вы вернули (в данном случае passive, но, конечно, вы можете изменить его по своему усмотрению)

@Component({
  selector: "your-component",
  templateUrl: "./your.component.html",
  encapsulation: ViewEncapsulation.None,
  styles: [
    `
     .k-grid tr.passive {
        background-color: lightgray;
      }

    `
  ]
})

очень важно использовать encapsulation: ViewEncapsulation.None и называть класс с префиксом .k-grid tr иначе вы не получите нужного результата

person Hakan Fıstık    schedule 17.09.2019

Используйте обратный вызов rowClass, чтобы предоставить настраиваемый класс всем строкам, элементы данных которых соответствуют определенным критериям, а затем стилизуйте их с помощью CSS, например:

ДОКУМЕНТЫ + ДЕМО

person topalkata    schedule 09.02.2019

person    schedule
comment
спасибо за ответ. на самом деле я использую сетку кендо, поэтому у меня нет тега ‹tr› - person user9287106; 06.02.2019