我正在尝试将我的视图模型绑定到Html.Grid。我已将DisplayFormat注释设置为我的一个属性。但是,渲染网格时不应用格式。
这是代码: 在视图模型中:
[DisplayFormat(DataFormatString = "{0,10:###,0}")]
public double AmountCurrency { get; set; }
关于aspx:
<%= Html.Grid<MyViewModel>(Model.MyViewModel)
.Columns( column => {
column.For(x => x.AmountCurrency);
...
当我在aspx中格式化它时,它可以工作:
column.For(x => x.AmountCurrency).Format("{0,10:###,0}");
不确定为什么它不适用于Data Annotation。
非常感谢任何帮助。
谢谢:)
答案 0 :(得分:1)
通过查看Docs和Jeremy Skinner's comment,我认为这仅适用于自动生成的列。
如果自动生成的列不起作用,则可能需要custom grid renderer。
答案 1 :(得分:1)
在MvcContrib的第2版中,它的Grid忽略了DisplayFormat和DisplayName属性。并在版本3.0.51.0中修复 - 请参阅: http://mvccontrib.codeplex.com/workitem/7064
我已经检查了这个并且它现在可以正常工作(即使没有自动生成列)。