2012-01-05 8 views
0

私はTelerik Mvc Treeviewで作業しようとしています。ツリーに含まれるネストされたレベルの数を指定する方法はありますか?私はツリー上の単一のレベルがほしいと思う、私はノードをドラッグアンドドロップするとき、私はそのノードの子ノードになるようにユーザーがノードを別のノードにドロップするのを防ぐためにツリービューをしたいと思います。Telerik Mvcコントロールのツリービューのレベル数を指定する方法は?

答えて

0

厳密な数のレベルに留まるようにTreeViewに指示する直接の方法はありませんが、ノードが別のノードにドロップされるのを防ぐことができます。これを行う簡単な方法は、すべての場合に機能しないかもしれませんが、ノードがドロップされる「位置」を確認することです。「位置」は「上」、「前」、「後」のいずれかです。ノードが別のノードの上にドロップされているとき(それが子要素として追加される)、ノードは「オーバー」位置にあります。我々は次の操作を行うことができますことを知っ:これは、あなただけのツリービュー内のノードを再編成することを強制されます

@{Html.Telerik().TreeView() 
     .Name("TreeView") 
     .Items(items => 
     { 
      items.Add().Text("Item 1"); 
      items.Add().Text("Item 2"); 
      items.Add().Text("Item 3"); 

     }) 
     .DragAndDrop(true) 
     .ClientEvents(clientEvents => clientEvents.OnNodeDrop("onNodeDropped")) 
     .Render(); 
} 

<script type="text/javascript"> 
    function onNodeDropped(e) { 
     var position = e.dropPosition; 
     if (position === "over") { 
      e.preventDefault(); 
     } 
    } 
</script> 

。特定のシナリオに合わせてコードを追加する必要があるかもしれないので、Drag and DropへのリンクとClient-side APIドキュメントの記事がここにあります。

関連する問題