I'm trying to make a Link Loader for a popular online game, KingsOfChaos.com, where one of the ways you can increase your army is by having people click on your "secret link".

I set up my treeview with my commander/officer hierarchy and checkboxes in front of each node. I currently have it set so that when the user double-clicks on a node a browser window opens and loads the link.

I want to be able to set it so that users can click on the checkboxes of those players's links they wish to follow and then click a submit button. That button will go through the tree and find which nodes are checked and load my linkloader sub for node checked.

I also want to make a button that will check all of the nodes and one that will uncheck all of the nodes.

The problem I'm running into is that each subtree is individually indexed, i.e.:


[ ] Index 0
 |
 |--[ ] Index 0
 |
 |--[ ] Index 1
 |
 |--[ ] Index 2
 |   |
 |   |--[ ] Index 0
 |   |
 |   |--[ ] Index 1
 |
 |--[ ] Index 3

and I'm not sure how make the program recognize which node is which and which is checked. Any ideas?