How to allow moving TreeView nodes between trees, but not within the same tree

I have a pair of TreeViews that I want to allow dragging nodes between the TreeViews, but not allow dragging the node to a different place within the same TreeView.

The easiest way I can figure out how to do that would be to pass back FALSE to ACanDrop in the BeforeDropNode() event if the move is within the same tree. The problem with that is I can't figure out how to determine the name of the TreeViews that hold AFromNode and AToNode. If I had that name, I could just compare them to see if they are different before allowing the drop to take place.

Can you help me determine the name of the TreeView that contains these two nodes or give me some other way to allow dragging between trees, but not within trees?


You should be able to implement your own custom drag & drop events via OnCustomDrag* & OnCustomDrop* events

It's based on TAdvTreeView but TTMSFNCTreeView is the same component.