У меня есть приложение MVC, в котором я заполняю сетку из моей модели. Свойство модели "RAG" содержит строку, содержащую название цвета. На основании чего я заполняю сетку маленьким цветным квадратом.
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.DMRTitle)
</td>
<td>
@Html.DisplayFor(modelItem => item.PlannedDate)
</td>
<td>
@if (item.RAG == "Green")
{
<div style="height: 20px; width: 20px; background-color: lightgreen"></div>
}
else if (item.RAG == "Amber")
{
<div style="height: 20px; width: 20px; background-color: orange"></div>
}
else
{
<div style="height: 20px; width: 20px; background-color: orangered"></div>
}
</td>
</tr>
}
Этот код работает нормально, и моя сетка отображается должным образом.
![enter image description here](https://i.stack.imgur.com/ZazQP.png)
Теперь я хотел добавить функцию SOrting и Filtering, поэтому я изменил свою сетку на Grid.MVC.
Я могу отобразить столбцы как текст, используя этот код.
<div>
@Html.Grid(Model).Columns(columns =>
{
columns.Add(c => c.DMRTitle).Titled("Milestone").Filterable(true).SetWidth(100);
columns.Add(c => c.PlannedDate).Titled("Planned Date").Format("{0:dd-MMM-yyyy}").Filterable(true).SetWidth(100);
columns.Add(c => c.RAG).Titled("RAG").Filterable(true).SetWidth(100);
}).WithPaging(5).Sortable(true)
Как я могу изменить текст в столбце RAG на цветные квадраты, которые я использовал раньше?
Если добавить квадрат невозможно, можно ли изменить цвет фона ячейки на основе значения, которое он содержит? это также будет работать для меня.