2011-08-01 90 views
7

我正在使用VB.NET開發一個使用MVC3的Web應用程序。MVC3 WebGrid列中的自定義文本

有困難與下列動作的WebGrid設置專欄中,我鏈接

編輯|詳細信息|刪除

@*@Html.ActionLink("Edit", "Edit", New With {.id = currentItem.PrimaryKey}) | 
@Html.ActionLink("Details", "Details", New With {.id = currentItem.PrimaryKey}) | 
@Html.ActionLink("Delete", "Delete", New With {.id = currentItem.PrimaryKey})*@ 

我曾嘗試使用以下語法,但我得到的地方項目未聲明的錯誤。

grid.Column(標題:= 「」,格式:=(項目)=> item.GetSelectLink( 「自定義文本」))

我如何引用當前行或項目中的WebGrid,使這項工作?

任何幫助非常感謝。

問候

詹姆斯

回答

10
grid.Column(
columnName:"PrimaryKey", 
header:"Actions",  
format: (item) => 
{ 
    var links = Html.ActionLink("Edit", "Edit", new {id = item.PrimaryKey}) + " | " + 
       Html.ActionLink("Details","Details", new { id = item.PrimaryKey}) +" | "+ 
       Html.ActionLink("Delete","Delete", new { id = item.PrimaryKey}); 

    return Html.Raw(links); 

}), 

呈現以下HTML(格式化的可讀性)

<td> 
    <a href="/Home/Edit/5">Edit</a> | 
    <a href="/Home/Details/5">Details</a> | 
    <a href="/Home/Delete/5">Delete</a> 
</td> 
+1

嗨A hmad 非常感謝您的回覆。我會修改這個VB.NET並試一試。 「(item)」在哪裏申報? – winsql

+0

@winsql - 參考http://msdn.microsoft.com/en-us/library/system.web.helpers.webgridcolumn.format(v=vs.99).aspx – Ahmad

4

也可以使用下面這更像正常的方式,所以我比較喜歡:

grid.Column(format: @<text> 
       @Html.ActionLink("Edit", "Edit", new { id = item.Id }) | 
       @Html.ActionLink("Delete", "Delete", new { id = item.Id })  
    </text>)