Simon,
By using the PathSeparator and the SelectedItem properties, you should be able to determine the level of your Treeview. Having this information you can then search the appropriate tables and load those values into the ListView/ListItems objects.
In addition, I normally may add a value such as a record number to the node.tag property which will then allow me to go right to that record and load the values rather than requering the table.
Good luck.