Как стилизовать строки в сетке MVCContrib на основе их данных?

Я разбираюсь в MVCContrib Grid и зациклен на том, как форматировать строку данных в сетке на основе данных.

Например, скажем, у нас есть сетка продуктов, где у каждого продукта есть поля данных, такие как имя, цена и прекращение. Я хотел бы выделить все строки продуктов, которые были прекращены.

Одним из способов было бы использовать jQuery на стороне клиента, чтобы применить класс CSS к тем строкам, где прекращенная ячейка имеет значение ИСТИНА, но это похоже на хрупкое решение. Я надеюсь, что есть способ сделать это на стороне сервера с помощью вызова метода Html.Grid.

Спасибо

Ответ 1

Привет Скотт: попробуйте что-то вроде следующего, чтобы добавить RowAttributes -

@Html.Grid(Model)
    .WithModel(new CustomerGridModel())
    .Sort(ViewData["sort"] as GridSortOptions)
    .Attributes(id => "grid", style => "width: 100%;")
    .RowAttributes(data => new MvcContrib.Hash(
        @class => data.Item.Discontinued ? "discontinued" : ""))

Это добавит атрибут класса к элементу tr. Затем создайте класс по строкам:

tr.discontinued td {background-color: red;}

Извините за длинный фрагмент кода...