如何根据MVCContrib Grid的数据设置行的样式?

Sco*_*ell 10 asp.net-mvc mvccontrib mvccontrib-grid

我正在修改MVCContrib网格,并坚持如何基于数据格式化网格中的一行数据.

例如,假设我们有一个产品网格,其中每个产品都有数据字段,如名称,价格和已停产.我想强调所有已停产的产品行.

一种解决方法是在客户端使用jQuery将CSS类应用于已停止的单元格为TRUE的那些行,但这似乎是一个脆弱的解决方案.我希望有一种方法可以通过Html.Grid方法调用在服务器端执行此操作.

谢谢

小智 31

您好Scott:尝试使用以下内容添加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" : ""))
Run Code Online (Sandbox Code Playgroud)

这将为tr元素添加一个class属性.然后,创建一个类:

tr.discontinued td {background-color: red;}
Run Code Online (Sandbox Code Playgroud)

对不起,长代码片段......