This sounds like it could be a job for a tree control... like the oneused for windows explorer. I have code for that somewhere if youlike... may take a couple of days to find it though.