This is the expected behavior when using RadTreeListView as you depend on the CurrentItem changing of the source collection.
Let me explain the case in details. RadTreeListView internally uses HierarchicalCollectionView that contains all items and does not notify the source collection about the current item change. RadTreeListView CurrentItem can be from either parent or child source, in your case - item from Items collection or item from Children collection. The problem comes when those collections have to be notified about TreeListView CurrentItem change. When it is an item from Children collection, what happens with the current item of the parent collection? This is why this logic is not implemented.
What you can do is to:
1. Listen for RadTreeListView.Items collectiion CurrentChanged event and change RadDataForm CurrentItem accordingly.
2. Bind RadGridView CurrentItem/SelectedItem to RadDataForm CurrentItem with TwoWay mode.
I hope this helps.
DevCraft Q1'14 is here! Watch the online conference to see how this release solves your top-5 .NET challenges. Watch on demand now.