10

私はMVCContribグリッドをいじくり回していて、データに基づいてグリッド内のデータの行をフォーマットする方法に固執しています。

たとえば、製品のグリッドがあり、各製品に名前、価格、製造中止などのデータフィールドがあるとします。廃止されたすべての製品行を強調したいと思います。

回避策の1つは、クライアント側でjQueryを使用して、廃止されたセルがTRUEである行にCSSクラスを適用することですが、これは脆弱な解決策のようです。Html.Gridメソッド呼び出しを介してサーバー側でそれを行う方法があることを望んでいます。

ありがとう

4

1 に答える 1

31

こんにちはスコット:RowAttributesを追加するには、次のようなものを試してください-

@Html.Grid(Model)
    .WithModel(new CustomerGridModel())
    .Sort(ViewData["sort"] as GridSortOptions)
    .Attributes(id => "grid", style => "width: 100%;")
    .RowAttributes(data => new MvcContrib.Hash(
        @class => data.Item.Discontinued ? "discontinued" : ""))

これにより、クラス属性がtr要素に追加されます。次に、次の行に沿ってクラスを作成します。

tr.discontinued td {background-color: red;}

長いコードスニペットでごめんなさい...

于 2011-01-12T00:28:11.357 に答える