代码之家  ›  专栏  ›  技术社区  ›  anonymous

Kendo UI网格ASP.net MVC在底部添加多个

  •  1
  • anonymous  · 技术社区  · 11 年前

    我需要得到多个字段的和值,我知道如何做一个,但不知道如何做多个。我拥有的是:

    @(Html.Kendo().Grid(Model.Result)
                                                .Name("grid1")
                                                .Columns(col =>
                                                {
                                                    col.Bound("Date").Format("{0:n2}").Format("{0:d}");
                                                    col.Bound("ClientAge").Format("{0:n2}");
                                                    col.Bound("PartnerAge").Format("{0:n2}");
                                                    col.Bound("TotalGrossIncome").Format("{0:n2}");
                                                    col.Bound("TotalExpenditure").Format("{0:n2}");
                                                    col.Bound("TotalNetIncome").Format("{0:n2}");
                                                    col.Bound("TotalAssets").Format("{0:n2}");
                                                    col.Bound("TotalLiabilities").Format("{0:n2}");
                                                    col.Bound("TotalNetAssetValue").Format("{0:n2}");
                                                }
                                                ) 
                                                .Scrollable()
                                                .Selectable(select => select.Mode(GridSelectionMode.Single))
                                                .DataSource(dataSource => dataSource
                                                    .Server()                                               
                                                    .Model(model => model.Id(p => p.Date))
                                                ).Deferred(true)
                                            )
    

    我基本上需要页脚中的和值

                                                    col.Bound("TotalGrossIncome").Format("{0:n2}");
                                                    col.Bound("TotalExpenditure").Format("{0:n2}");
                                                    col.Bound("TotalNetIncome").Format("{0:n2}");
                                                    col.Bound("TotalAssets").Format("{0:n2}");
                                                    col.Bound("TotalLiabilities").Format("{0:n2}");
                                                    col.Bound("TotalNetAssetValue").Format("{0:n2}")
    

    有人能帮助我吗?请不要成为剑道大师:(

    1 回复  |  直到 11 年前
        1
  •  4
  •   Ehtesham Z    9 年前

    所以我设法整理了一下:D看看下面。根据Kendo的文档,模板实际上是不正确的-使用#=sum#是指ASP.net的初始示例的客户端。我使用了一种不同的方法,现在正在查找。

    @(Html.Kendo().Grid(Model.Result)
        .Name("grid1")
        .Columns(col =>
        {
            col.Bound("Date").Format("{0:n2}").Format("{0:d}").FooterTemplate("TOTALS");
            col.Bound("ClientAge").Format("{0:n2}");
            col.Bound("PartnerAge").Format("{0:n2}");
            col.Bound(p => p.TotalGrossIncome).Format("{0:n2}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
            col.Bound(p => p.TotalExpenditure).Format("{0:n2}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
            col.Bound(p => p.TotalNetIncome).Format("{0:n2}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
            col.Bound(p => p.TotalAssets).Format("{0:n2}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
            col.Bound(p => p.TotalLiabilities).Format("{0:n2}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
            col.Bound(p => p.TotalNetAssetValue).Format("{0:c}").FooterTemplate(@<text>@item.Sum.Format("{0:c}")</text>);
        })
        .Pageable()
        .Selectable(select => select.Mode(GridSelectionMode.Single))
        .DataSource(dataSource => dataSource
            .Server()
            .Model(model => model.Id(p => p.Date))
            .PageSize(100)
            .Aggregates(aggregates =>
            {
                aggregates.Add(p => p.TotalGrossIncome).Sum();
                aggregates.Add(p => p.TotalExpenditure).Sum();
                aggregates.Add(p => p.TotalNetIncome).Sum();
                aggregates.Add(p => p.TotalAssets).Sum();
                aggregates.Add(p => p.TotalLiabilities).Sum();
                aggregates.Add(p => p.TotalNetAssetValue).Sum();                                                      
            })
        )
        .Deferred(true)
    )