PivotGrid中的默认排序顺序

1回答 31日视图
PivotGrid
塔拉斯
最高的成就
等级2
经验丰富的
塔拉斯问上<年代pan class="local-datetime e2e-th-date" data-timestamp="1669329867360">2022年11月24日下午10点

如何在数据透视网格中指定行/列的默认排序顺序?

我的控制器有这个方法

public IActionResult PivotGrid() {IEnumerable<年代pan class="hljs-tag" style="color: #0000ff"><<年代pan class="hljs-name" style="color: #0000ff">ResponseReportPivot>objResponseList = _db.ResponseReportPivot;var sortedResponseList = objResponseList。OrderBy(s => s. eventyear)。ThenBy(s => s. venue);返回视图(sortedResponseList);}

当我运行pivot时,我得到了附加在pivot display .jpg中的显示。

如果我改变orderderby子句,我将得到Pivot display 2.jpg格式的显示。

我知道用户可以更改排序,但我希望列显示默认为事件年升序,行显示默认为场馆升序。

我还没见过任何地方能做到这一点。

这是主元网格代码


@*用于本地绑定*@ @using Application.Models;@using Kendo.Mvc.Extensions;@using Kendo.Mvc.UI;@ model IEnumerable<年代pan class="hljs-tag" style="color: #0000ff"><<年代pan class="hljs-name" style="color: #0000ff">ResponseReportPivot>@ {ViewBag。标题=“响应报告Pivot Grid”;} @Html.AntiForgeryToken ()<年代pan class="hljs-tag" style="color: #0000ff"><<年代pan class="hljs-name" style="color: #0000ff">风格>.k-pivot-table.k-grid-content道明{<年代pan class="hljs-attribute" style="color: #a31515">text-align:离开;}风格><<年代pan class="hljs-name" style="color: #0000ff">div=<年代pan class="hljs-string" style="color: #a31515">“k-pivotgrid-wrapper”>@(Html.Kendo().PivotConfigurator() .Name("configurator") .HtmlAttributes(new {@class = "hidden-on-narrow"}) .Filterable(true) .Sortable(true) .Height(570)) @(Html.Kendo().PivotGrid<年代pan class="hljs-tag" style="color: #0000ff"><<年代pan class="hljs-name" style="color: #0000ff">ResponseReportPivot>() . name ("pivotgrid") . configurator ("#configurator") . columnwidth (120) . filterable (true) . height (570) . sortable (true) . bindto (Model) . dataSource (dataSource => dataSource . ajax () . schema (schema => schema . cube (cube => cube . dimensions (dimensions => {dimensions. data)) . dataSource (dataSource => dataSource . ajax () . schema (schema => schema . cube (cube => cube . dimensions (dimensions => {dimensions. data))添加(model => model. venue)。标题(“场所”);维度。Add (model => model.EventYear).Caption("All Years"); }) .Measures(measures => { measures.Add("Count").Field(model => model.Venue).AggregateName("count"); }) )) .Columns(columns => { columns.Add("EventYear").Expand(true); }) .Rows(rows => rows.Add("Venue").Expand(true)) .Measures(measures => measures.Values("Count")) .Events(e => e.Error("onError")) ) )<年代pan class="hljs-tag" style="color: #0000ff">div><<年代pan class="hljs-name" style="color: #0000ff">div=<年代pan class="hljs-string" style="color: #a31515">“responsive-message”>div><<年代pan class="hljs-name" style="color: #0000ff">脚本>函数onError(<年代pan class="hljs-params">e{警报(<年代pan class="hljs-string" style="color: #a31515">错误:“+ kendo.stringify (e.errors [<年代pan class="hljs-number">0)));}脚本>

1回答<年代pan id="accpetedHeading">, 1被接受

排序
0
接受
亚历山大
Telerik团队
在回答<年代pan class="local-datetime e2e-th-date" data-timestamp="1669738468517">2022年11月29日04:14点

嗨塔拉斯,

感谢您的联系,并在您的终端上花时间分享相关的PivotGrid配置,非常感谢。

通常,PivotGridDataSource公开了一个内置的. sort () API配置,可用于显式地为任何给定的任意字段添加默认排序。这里有一个例子:

.DataSource (<年代pan class="hljs-function">数据源= >dataSource .Ajax() .Transport(<年代pan class="hljs-function">运输= >交通工具。读(<年代pan class="hljs-string" style="color: #a31515">“Customers_Read”,<年代pan class="hljs-string" style="color: #a31515">“PivotGrid”) .Sort (<年代pan class="hljs-function">年代= >{<年代pan style="background-color: #b5e61d">s.Add (“国家”) .Ascending ();s.Add (“ContactTitle”) .Descending ();}) ... .列(<年代pan class="hljs-function">= >{列。Add (<年代pan class="hljs-string" style="color: #a31515">“国家”).扩大(<年代pan class="hljs-literal" style="color: #a31515">真正的);}) .Rows (<年代pan class="hljs-function">= >行。Add (<年代pan class="hljs-string" style="color: #a31515">“ContactTitle”).扩大(<年代pan class="hljs-literal" style="color: #a31515">真正的)))

为了方便起见,下面是一个Telerik REPL示例,它演示了上面提到的内容。注意,默认排序应用于国家“列和”ContactTitle“行。

我希望这能有所帮助。

亲切的问候,
亚历山大
进步Telerik

喜欢Telerik和Kendo UI产品,相信更多人应该尝试它们?邀请其他开发人员成为Progress客户每人可获得价值50美元的亚马逊礼券。

塔拉斯
最高的成就
等级2
经验丰富的
评论<年代pan class="local-datetime e2e-th-date" data-timestamp="1669828948663">2022年11月30日,05:22点

这工作。谢谢
标签
<年代pan class="tag selected mr-1 mb-1 e2e-thread-tag" title="PivotGrid">PivotGrid
塔拉斯
最高的成就
等级2
经验丰富的
的答案,
亚历山大
Telerik团队
分享这个问题
Baidu
map