@ Html.AjaxGrid()如何格式化小数

时间:2016-11-15 16:10:07

标签: c# ajax asp.net-mvc grid

我有一个@ 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 个答案:

答案 0 :(得分:1)

答案是:

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