[英]How to change color of row based on particular column condition in kendo grid for angular
我想將紅色應用於已完成小時列值大於 24 的行。我該怎么做。 請幫助我是角度的新手。
<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>
首先:您必須將[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
非常重要encapsulation: ViewEncapsulation.None
並使用前綴.k-grid tr
命名類,否則您將無法獲得所需的結果
使用rowClass回調為數據項滿足某些自定義條件的所有行提供自定義類,然后通過 CSS 設置它們的樣式,例如:
如果滿足上述條件,這將用紅色背景顏色標記行
<tr *ngFor="let myObject of myArray;" [ngStyle]="{'background-color':myObj.completedIn>24 ? 'red' : '' }"> <!-- your other code --> </tr>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.