Sorry for necromancing this thread...
I'm developing a desktop app, where the main GUI is setup by data from a file, placing a bunch of ContainerControls inside a GroupBox inside a GroupBox (so I can scroll the chunk using a scrollbar).
Now, the ContainerControls (which each have a small GUI on them) are added top->down, the first added at top Y, the next at top+height_of-the_one_above+margin etc.
But the Tab order is bottom first, and then it goes upwards, 5 - 4 -3 - 2 when hitting tab (and the correct order when hitting shift tab.
How can you control this programatically as I do not know beforehand who will be after me (that is done at runtime, parsing a file, adding the objects. I could probably tell each of them who's next and who's before during creating, should I do my own tab handler in KeyDown for this or is there some magic API i've forgotten about / never heard of to handle it.