When trying to Reorder elements in the FMXTreeview I discovered that the "Data" fields were missing.
Looking into the code, it seems there was a line missing.
See the code below.
I've added the line and now my code is running just fine.
procedure TTMSFMXTreeViewNode.MoveTo(ADestination: TTMSFMXTreeViewNode; AIndex: Integer = -1);
var
n, nw: TTMSFMXTreeViewNode;
begin
if ADestination <> Self then
begin
if Assigned(FTreeView) then
FTreeView.BeginUpdate;
n := TTMSFMXTreeViewNode.Create(nil);
n.Assign(Self);
n.AssignData(Self); // JJ
nw := ADestination.Nodes.Add;