private void OnItemDrop(object sender, ItemDropArgs args) { if (args.DropTarget == null) { return; } TreeView.ItemDropStdHandler <DataItem>(args, (item) => item.Parent, (item, parent) => item.Parent = parent, (item, parent) => ChildrenOf(parent).IndexOf(item), (item, parent) => ChildrenOf(parent).Remove(item), (item, parent, i) => ChildrenOf(parent).Insert(i, item)); }