0

MyMVC ViewModelには、 my 内に表示されるレコードの初期リストが含まれていますKendo TreeList。ただし、TreeList は初期リストをレンダリングしていません...その理由がわかりません。

要件:

  • 初期レコードが存在する場合...表示する
  • READ ACTION CANNOT は最初のレンダリングで実行できません (他のコントロールは後でそれを管理します)

その他の剣道コントロールについては、次のように設定します。

  • AutoBind(偽)
  • BindTo(モデル.マイコレクション)

...そして READ ACTION は実行されません。しかし、現時点では TreeList は失敗しています。

MY RAZOR は次のように見えます:
最初のレンダリング レコードでは存在します (下の画像を参照)。

@(Html.Kendo().TreeList<DeviceHierarchyDataItem>()
              .Name("treeTarget")
              .Columns(columns =>
              {
                  columns.Add().Field(e => e.DisplayName)
                               .TemplateId("tmplDisplayName")
                               .Title(" ");
              })
              .BindTo(Model.TargetDevices)
              .AutoBind(false)
              .DataSource(dataSource => dataSource
                         .Read(read => read.Action("find", "devicehierarchy", new { Area = "" })
                                           .Data("window.etp.pageController.getFilter"))
                         .ServerOperation(false)
                         .Model(m =>
                         {
                             m.Id(f => f.Id);
                             m.ParentId(f => f.ChildOf);
                             m.Expanded(true);
                             m.Field(f => f.DisplayName);
                         }))
              .Sortable())

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

4

1 に答える 1

1

奇妙なことに、TreeList MVC コントロールはローカル データへのバインドをサポートしていません...少なくとも2018 年 7 月にはサポートしていません...

代わりにjquery コントロールを使用することをお勧めします。

次に、データをモデルから json 文字列に変換します。

$(document).ready(function () {
                var dataSource = new kendo.data.TreeListDataSource({
                    data: @Html.Raw(Json.Encode(@Model.TargetDevices)),
                    schema: {
                        model: {
                        id: "Id", 
                        parentid: "ChildOf", 
                        expanded: true
                        }
                    }
                });

それが役立つことを願っています!

于 2019-02-01T08:30:07.050 に答える