2011-09-12 25 views
0

我無法通過WebGrid爲每條記錄顯示兩行數據。每個記錄有兩行的ASP.NET MVC3 Webgrid

我的數據應以表格的形式呈現,而是因爲有太多的列和列的一個實際上有太多的數據(完整地址)我想在兩行每個記錄顯示它們。

我如何能做到這一點任何想法?謝謝。

,我希望看到每個記錄的表標誌了一個簡單的例子是:

<tr> 
<td> 
    123456 
</td> 
<td> 
    string 
</td> 
<td> 
    string 
</td> 
<td> 
    <input type="checkbox" name="ProductIds" value="1"> 
</td> 
</tr> 
<tr> 
<td colspan="4"> 
    <div> 
    </div> 
</td> 
</tr> 

回答

0
<tr><td> 
<table> 
<tr> 
<td>123456</td> 
<td>string</td> 
<td>string</td> 
<td><input type="checkbox" name="ProductIds" value="1" /></td> 
</tr> 
<tr><td colspan="4">http://link</td></tr> 
</table> 
</td></tr> 
+0

感謝您的答覆安德魯。所以你建議有嵌套的表,這將影響我的webgrid將只有一個列的每個記錄?通過這個設置,與使用foreach()循環相比,有什麼優勢嗎? – user895852

+0

我有,我想顯示兩行一樣 輸入make模型(第一排) 顏色registeration(第二行)一個記錄中的WebGrid 這裏是示例代碼 http://stackoverflow.com/questions/22885863/show-one-row-of-record-as-multiples-rows-in-webgrid .how我可以這樣做嗎? – Wasfa

0

我將創建一個網格,只有一列。然後,使用grid.Column的第二個參數format作爲Func類型。因此,您可以用它來創建一個新的HtmlString:

grid.Column("AnyOldColumnName", format: item => new HtmlString(// Code to render a table with two rows)) 

即,使用該項參數的lambda函數來呈現一個表有兩列。

我從來沒有做過這一點,不知道它會有什麼樣的表現。但我認爲這是最好的選擇。

0
@grid.GetHtml(tableStyle: "webgrid1", columns: grid.Columns(grid.Column(grid.Column(format: item => new HtmlString("<table>"+ 
             "<tr>"+ "<td>"[email protected]+"</td>"+"<td>"[email protected]+"</td>"+"<td>"[email protected]+"</td>"                   
             +"</tr>" +"<tr>"+ "<td>"[email protected]+"</td>"+"<td>"[email protected]+"</td>" 
             +"<td>"[email protected]+"</td>" +"</tr>" +"<tr>"+ "<td>"[email protected]+"</td>" 
             +"<td>"[email protected]+"</td>" +"<td>"[email protected]+"</td>" +"</tr>"+"<tr>"+ 
             "<td>"+"</td>"+ "<td>"[email protected]+"</td>" +"<td>"[email protected]+"</td>" 
             +"<td>"[email protected]+"</td>" +"</tr>" +"</table>"))))