変更した階層を保存できるように、コントローラに必要な情報を保持するために、各ツリー ノードに ID 属性を割り当てました。
ただし、ノードをドロップすると、Id 属性が削除されます。これがバグなのか、何か間違ったことをしているのか、それとも開発者が意図したとおりに機能しているのかはわかりません。
アラート ウィンドウのスクリーンショット (以下のコード) と、Firebug から生成された Html の 2 つのショットを添付しました。1 つはドロップ前で、もう 1 つはドロップ後です。
@(Html.Kendo().TreeView()
.Name("CompanyHierarchy")
.Events(events => events
.DragEnd("HierarchyDragEnd")
)
.BindTo(Model.Hierarchy as System.Collections.IEnumerable, mappings =>
{
mappings.For<Models.EnterpriseChildModel>(binding => binding
.Children(c => c.Children)
.ItemDataBound((item, c) =>
{
item.Text = c.Name;
item.HtmlAttributes.Add("Id", c.EnterpriseID.ToString());
})
);
})
.DragAndDrop(true))