Help with Slate TreeView/ STreeView

Hey guys, I’ve been having issues lately with the way TreeView functions,
First of all i dont have any idea how to preform a recursive GetChildren method,
And second of all I have no clue how to get the path to the current selected node in the tree.
And lastly I cant figure out how to get a selected node PLACEMENT (I know how to get the selected node, Its with the method of OnTreeSelectedChanged or something like that)
I just wanna get the children recursivly, So i have to know the path to the node itself inoreder to add to the path.
Pics :

You can see that it displays the first and second row of children but i cant access the third row.
When i press the “Expand arrow” it just removes all the other ones