2011-04-19 56 views
0

無法使用.RowStart方法的示例。MVCContrib Grid MVC 3 Razor .RowStart

比較2個語法: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(); %> 

似乎沒有翻譯成剃刀

.RowStart((x, row) => string.Format("<tr class='{0}'>", row.IsAlternate ? "grid-row" : "grid-row-alt")) 

通行證確定,但不發出任何行更改。

此信息是否有效?

回答

3

我剛剛注意到一些慣例的東西,Html.Grid是把在爲你...

給出下面

Html.Grid(Model.Results).Attributes(@class => "grid") 

導致表類=「網格」, 它甚至沒有class =「gridrow」, 和奇數行的類=「gridrow_alternate」

1

不知道這是否會幫助,但有一件事我一直在做最近使用:

.RowAttributes(x => new Dictionary<string, object> { { "class", x.value == myValue ? "highlight" : "" } }) 

這讓我做了很多與屬性的CSS值。那麼對於支持「斑馬條紋」我用純CSS(瀏覽器的兼容性可能是這裏的問題,但它的婀娜只是在舊版瀏覽器不渲染)看起來像

tr:nth-child(odd) { 
background-color: #eee;} 

插上U在桌子上巨大的控制。更多關於選擇器的信息Sitepoint child selectors

其他明智的,你可以嘗試google groups mvccontib傑里米通常是尖銳的幫助。

希望這有助於。

+0

它沒有錯,所以+1,但唉css3選擇器目前無法支持的Intranet瀏覽器。 – 2011-05-04 15:45:38