20

我正试图@String.Format("{0:0.00}",Model.CurrentBalance)进入这个@Html.TextBoxFor(model => model.CurrentBalance, new { @class = "required numeric", id = "CurrentBalance" })

我只是希望货币在我的文本框中显示为 .00,但没有运气。关于我如何做到这一点的任何想法?

4

3 回答 3

31

string.format("{0:c}", Model.CurrentBalance) should give you currency formatting.

OR

@Html.TextBoxFor(model => model.CurrentBalance, new { @class = "required numeric", id = "CurrentBalance", Value=String.Format("{0:C}",Model.CurrentBalance) })

于 2011-08-05T23:14:41.380 回答
20
@Html.TextBoxFor(model => model.CurrentBalance, "{0:c}", new { @class = "required numeric", id = "CurrentBalance" })

这使您可以设置格式并添加任何额外的 HTML 属性。

于 2016-04-27T13:35:32.657 回答
1

虽然Dan-o 的解决方案有效,但我发现它在使用基于表单的 TempData 时存在问题(请参阅ImportModelStateFromTempData 和 ExportModelStateToTempData)。对我有用的解决方案是David Spence在相关线程上的。

具体来说:

[DisplayFormat(DataFormatString = "{0:C0}", ApplyFormatInEditMode = true)]
public decimal? Price { get; set; }

现在,如果您在视图中使用EditorFor,则应应用注释中指定的格式,并且您的值应以逗号分隔:

<%= Html.EditorFor(model => model.Price) %>
于 2015-02-12T20:51:12.573 回答