MVCContrib Grid MVC 3 Razor .RowStart

| .RowStart方法的示例遇到麻烦。 比较这两种语法:http://www.jeremyskinner.co.uk/2009/03/01/mvccontrib-grid-part-5-the-action-syntax/ 在这个
.RowStart(row => string.Format(\"<tr{0}>\", row.IsAlternate ? \"style=\\\"background-color:#CCDDCC\\\"\" : \"\"))
row.IsAlternate
引发错误,因为行不是GridRow,它实际上是您的模型(以及行的数据项)。 第二种语法(ActionSyntax):
.RowStart((p,row)  => {     
             if (row.IsAlternate) { %>
                   <tr style=\"background-color:#CCDDCC\">
             <%  }  else  { %>
                 <tr>
             <% }
    }).Render(); %>
似乎没有翻译成Razor
.RowStart((x, row) => string.Format(\"<tr class=\'{0}\'>\", row.IsAlternate ? \"grid-row\" : \"grid-row-alt\"))
通过,但不发出任何行更改。 有这个工作吗?
已邀请:
我刚刚注意到Html.Grid为您提供的一些常规内容... 鉴于以下
Html.Grid(Model.Results).Attributes(@class => \"grid\")
导致表的类为\“ grid \”, 偶数类= \“ gridrow \”的行, 和带有奇数行的类= \“ gridrow_alternate \”
不知道这是否有帮助,但是我最近一直在做的一件事是使用:
.RowAttributes(x => new Dictionary<string, object> { { \"class\", x.value == myValue ? \"highlight\" : \"\" } })
这使我可以对属性的css值做很多事情。然后为了支持\“ Zebra striping \”,我使用纯CSS(浏览器兼容性可能是一个问题,但这很优美,只是不能在旧的浏览器上呈现)
tr:nth-child(odd) {
background-color: #eee;}
使您可以很好地控制桌子。有关选择器的更多信息Sitepoint子选择器 否则,您可以尝试使用mvccontib的google组。杰里米通常会提供帮助。 希望这会有所帮助。

要回复问题请先登录注册