1

ビュー モデルを Html.Grid にバインドしようとしています。DisplayFormat 注釈をプロパティの 1 つに設定しました。ただし、グリッドがレンダリングされるとき、フォーマットは適用されません。

コードは次のとおりです。ビューモデルでは:

[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}");

データ注釈で機能しない理由がわかりません。

どんな助けでも大歓迎です。

ありがとう :)

4

2 に答える 2

1

DocsJeremySkinnerのコメントを見ると、これは自動生成された列でのみ機能すると思います。

自動生成された列が機能しない場合は、カスタムグリッドレンダラーが最適な方法である可能性があります。

于 2010-08-24T00:06:21.790 に答える
1

MvcContrib のバージョン 2 では、Grid は DisplayFormat 属性と DisplayName 属性の両方を無視しました。バージョン 3.0.51.0 で修正されています。これを参照してください: http://mvccontrib.codeplex.com/workitem/7064

これを確認したところ、正しく動作するようになりました (列が自動生成されていなくても)。

于 2014-09-25T12:58:17.893 に答える