如何根据数据对 MVCContrib 网格中的行进行样式设置?

Posted

技术标签:

【中文标题】如何根据数据对 MVCContrib 网格中的行进行样式设置?【英文标题】:How to style rows in the MVCContrib Grid based on their data? 【发布时间】:2011-06-07 10:42:57 【问题描述】:

我正在修改MVCContrib Grid,并且一直在思考如何根据数据格式化网格中的一行数据。

例如,假设我们有一个产品网格,其中每个产品都有名称、价格和停产等数据字段。我想突出显示所有已停产的产品行。

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

谢谢

【问题讨论】:

【参考方案1】:

你好 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" : ""))

这将为 tr 元素添加一个类属性。然后,按照以下方式创建一个类:

tr.discontinued td background-color: red;

对不起,长代码 sn-p...

【讨论】:

刚发现这个...很棒的sn-p。谢谢! 点个赞!这在我的项目中对我很有用。干杯! 将网格括在圆括号中,您可以使流畅的语法多行 ;-) @(Html.Grid(Model) .WithModel(..) ... )

以上是关于如何根据数据对 MVCContrib 网格中的行进行样式设置?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 css 类应用于 mvccontrib 网格

MVCContrib 网格 - 我可以指定 tbody 属性吗?

复杂对象上的 MvcContrib 网格排序

MVCContrib 网格 - 选择行

如何将 css 类添加到 MVCContrib 网格 <th>

可以将页脚添加到 MVCContrib 网格吗?