You can prevent your items from being dropped outside the root node by implementing OnDragOver like shown bellow for instance:
private void OnDragOver(object sender, Telerik.Windows.DragDrop.DragEventArgs e)
var options = DragDropPayloadManager.GetDataFromObject(e.Data, TreeViewDragDropOptions.Key) as TreeViewDragDropOptions;
if (options != null)
if (options.DropTargetItem.Header.ToString() == "Sport Categories" && options.DropPosition != DropPosition.Inside)
options.DropAction = DropAction.None;
options.DropPosition = DropPosition.Undefined;
The important thing here is that you should change the DropAction and DropPosition depending on the DropTargetItem.
Attached is a sample project illustrating the above approach.
Hope it helps.
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Telerik Feedback Portal
and vote to affect the priority of the items