Don't do it like that.
That's a poor solution, because it's against OOPs principles: the "child" controls have to not only be aware of their "parent" (which compromises design) but also of the existence (and type) of each other - which makes it impossible to reuse, and also means you can't make any changes without considering the effect of other code in other classes.
That's a lot of bad design ideas going on here!
Instead, use Events which are handled in the "parent form" to control what is going on.
See here:
Transferring information between two forms, Part 3: Child to Child[
^] - it's about forms (but user controls work in exactly the same way, forms are controls, after all) and communications but the same principles and mechanisms apply.