我试过这两种方法:
[Display(Name = "Contract Value")]
[DisplayFormat(DataFormatString = "{0.##}")]
public decimal ContractValue { get; set; }这是:
[Display(Name = "Contract Value")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0.##}")]
public decimal ContractValue { get; set; }查看:
@Html.LabelFor(x => contractInfoModel.ContractValue)
@Html.TextBoxFor(x => contractInfoModel.ContractValue, new { maxlength = "100" })如果我这么做了,就管用了。但我不想这么做
<input type="text" name="@Html.NameFor(x=>contractInfoModel.ContractValue)" id="@Html.IdFor(x=>contractInfoModel.ContractValue)" value="@Model.ContractInfoM.ContractValue.ToString("0.##")" class="numeric" maxlength="10" />显示名称很好用。但它仍然显示小数点4位。我做错了什么?
谢谢!
发布于 2016-11-04 20:26:44
找到它:
从设计上看,DisplayFormat在TextBoxFor中不受尊重。所以,不是这样的:
@Html.TextBoxFor(x => contractInfoModel.ContractValue, new { maxlength = "10" })我做了这个:
@Html.EditorFor(x => contractInfoModel.ContractValue, new { maxlength = "10" })而且效果很好。
https://stackoverflow.com/questions/40431022
复制相似问题