2016-11-15 88 views
0

我有一個@ Html.AjaxGrid()(這是我的一個新概念),是被插在視圖這樣的:@ Html.AjaxGrid()如何格式化小數

@Html.AjaxGrid(Url.Action("Search", new { ID = Model.ID })) 

然後列在一個單獨的文件加入,Search.cshtml這樣的:

.... 
columns.Add(x => x.ItemPrice) 
    .Titled("Price") 
    .Encoded(false) 
    .Sortable(true) 
    .Filterable(false); 

在這個例子中,ITEMPRICE是在屏幕上顯示一個十進制:

1569.0000 

如何將其格式化爲美元?

$1,569.00 

我已經試過什麼:

columns.Add(x => x.ItemPrice.ToString("C")) 
    .Titled("Price") 
    .Encoded(false) 
    .Sortable(true) 
    .Filterable(false); 

但是,告訴我的ToString()不接受任何參數。此外...

columns.Add(x => x.ItemPrice) 
    .Titled("Price") 
    .Encoded(false) 
    .Sortable(true) 
    .Format("#,#") 
    .Filterable(false); 

這告訴我,.Format不能用作方法。

回答

1

答案是:

columns.Add(x => x.ItemPrice) 
     .Titled("Price") 
     .Encoded(false) 
     .Sortable(true) 
     .Filterable(false) 
     .RenderedAs(c => string.Format("{0:C}", c.ItemPrice));