【问题标题】:Sorting template columns in Kendo UI Grid在 Kendo UI Grid 中对模板列进行排序
【发布时间】:2014-03-19 13:19:55
【问题描述】:

我很难弄清楚如何对使用 Template 属性设置的网格中的列进行排序,如下所示:

    @(Html.Kendo().Grid(Model.UnitDetails)
      .Name("unitGrid")
      .DataSource(ds => ds
          .Ajax()
                  .Read(read => read.Action("Units_Read", "Fleet"))
          .AutoSync(true)
          .ServerOperation(true)
      )
      .Columns(columns =>
      {
          columns.Bound(p => p.ViewUnitContract.CurrentRun.Operation.WellContract.Location).Title("Well Site").Sortable(true);
          columns.Bound(p => p.ViewUnitContract.Name).Title("Unit Name").Width(200);
          columns.Template(p => { }).ClientTemplate(" ").Title("Well");
          columns.Template(p => { }).ClientTemplate(" ").Title("Run").Width(75);
          columns.Template(p => { }).ClientTemplate(" ").Title("Task").Width(365);
          columns.Template(p => { }).ClientTemplate(" ").Title("Activity").Width(200); ;
          columns.Template(p => { }).ClientTemplate(" ").Title("Depth (m)").Width(115);
          columns.Template(p => { }).ClientTemplate(" ").Title("Speed (m/min)").Width(90);
          columns.Template(p => { }).ClientTemplate(" ").Title("Weight (kg)").Width(90);
      })
      .ClientRowTemplate(Html.Partial("_ClientRowTemplate", Model).ToHtmlString())
      .Sortable())

对前两列进行排序可以正常工作,但是是否可以对与 ClientTemplates 绑定的列进行排序?

【问题讨论】:

    标签: kendo-ui kendo-grid kendo-asp.net-mvc


    【解决方案1】:

    要对列进行排序,它必须是 Bound 列。您仍然可以在Bound 列上设置ClientTemplate,但单独的Template 将无法排序。

    一种解决方法是更新您的视图模型以在控制器上计算任何“计算”值(松散地使用该术语),然后返回到视图。在这种情况下,您可以使用绑定列。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多