Delete controls in a control set

Scenario… I programmatically create an undetermined number of list boxes (or whatever control) as a control set. I need to be able to delete all but the original control in the set.

Question 1:
How do you remove a control from a control set (in code).

Question 2:
From my research, it appears there is no property that will simply give me the total number of controls in the set. I find that lack of basic functionality REALLY bizarre, so please correct me if that is incorrect.

Note: I’ve created a clunky workaround that cycles through every control and counts the ones with the same name.

Ok, I’ve discovered the first one… “Close” (I had “unload” on my brain). Looped in reverse order.

Control sets that are placed on the window do not have to have consecutive index numbers, so the concept of Ubound isn’t really useful. If you’re creating them in code, you can’t set the index (and it isn’t really useful in that context), so I could see where a Ubound would be helpful, but if you are creating them in code, why not append them to your own array to track them. That gives you the best of both worlds.

I use non-consecutive index numbering when I have a control set that spans tabpanel pages. I might have the “same” control on pages 3, 5 and 6. I set their index to the page they’re on for convenience.