>What do think of dynamically creating tab pages on one form for each selection. This would take care of the back and forward issues. At the moment I don't know how I would implement the tabs but I sure someone has done this in the past. My only concern would be how many can I add before it looks silly or is unreadable. I think I would have the same problems cascading windows. I thought about just using a grid to display all the selections. When you clicked on one of the grids rows it would popup a form displaying the detail information. Anyway I think the UI is not going to be easy.
>
>John
Yes, the UI is not easy to program. But that would be an alternative to consider.
Come to think of it, it is quite a challenge to manage parent-child scenarios, even without the problem of recursion. How do you usually handle parent-child in this case - articles and their materials, forgetting, for the moment, that each material can, again, be an article? I think you should have this quite clear, before you tackle the more complicated problem that involves recursion.
I have designed one solution with a pageframe, and two pages (one page for each table). Each table has a grid on the top, and TextBoxes etc., for the fields, on the bottom (in a Container, mainly to simplify a partial Refresh()).
In other cases, I use a separate form for each and every table - Grid on one Page in the PageFrame, Details (TextBoxes, etc.) in another Page.
Whatever your solution, I believe the recursive case should not be too different (in the UI for the end-user) from your regular forms.
Hilmar.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)