0

私は Telerik グリッドを持っており、カウントが次のように合計のすぐ下になるようにフッター テンプレートをカスタマイズしたいと考えています。

合計: $XXXXXXX カウント: XXXX

@モデル一覧

@(Html.Telerik().Grid(モデル) .Name("grd") .NoRecordsTemplate(" ")

.Resizable(resizing => resizing.Columns(false))
.Scrollable(c => c.Enabled(true).Height(300))

.Footer(false)
.Columns(columns =>
{
columns.Bound(o => o.Number)
    .Aggregate(ag => ag.Count());

columns.Bound(o => o.TotalCost)
    .Aggregate(ag => ag.Sum())
    .ClientFooterTemplate(
        "<div>Total: <#= $.telerik.formatString('{0:c}', Sum) #></div>" 
    );
})
.DataBinding(db => db.Ajax().Select("getList", "Home"))
.Pageable()
.Scrollable()
.Footer(true)

.HtmlAttributes(new { @class = ".t-grid .t-status" })

)

ご協力いただきありがとうございます。

4

1 に答える 1

1

以下を試すことができます。テストされていないことに注意してください。

.Resizable(resizing => resizing.Columns(false))
.Scrollable(c => c.Enabled(true).Height(300))
.DataBinding(db => db.Ajax().Select("getList", "Home"))
.Pageable()
.Columns(columns =>
{
columns.Bound(o => o.Number)
    .Aggregate(ag => ag.Count())
    .FooterTemplate(result => (result.Count == null ? "0" : result.Count.Format("{0:N0}")));

columns.Bound(o => o.TotalCost)
    .Aggregate(ag => ag.Sum())  
    .FooterTemplate(result => (result.Sum == null ? "0.00" : result.Sum.Format("{0:N2}")));
})

同じ列の下のフッターに Sum と Count を表示したい場合:

.NoRecordsTemplate("No records available!")
.Resizable(resizing => resizing.Columns(false))
.Scrollable(c => c.Enabled(true).Height("auto"))
.DataBinding(db => db.Ajax().Select("getList", "Home"))
.Pageable()
.Columns(columns =>
{       
    columns.Bound(o => o.TotalCost)
        .HtmlAttributes(new { style = "text-align:right" })
        .Format("{0:N2}")
        .Aggregate(ag => ag.Sum().Count())
        .FooterHtmlAttributes(new { style = "text-align:right" })
        .FooterTemplate(result => string.Format("Total: ${0:N2}, Count: {1:N0}", result.Sum , result.Count))
        .Width(60);     
})
于 2012-11-12T16:11:19.460 に答える