Ciao,
la soluzione che suggerisci è sicuramente praticabile, in effetti dal parent potresti poi fare un foreach sulla proprietà Controls.
Alternativa, non so se più pratica, è quella di usare un evento custom definito nel form principale cui registrare tutti i panel. Nel momento in cui viene richiesta priorità ad un controllo potrai notificare la cosa sollevado l'evento e magari passando come argomento un riferimento (o il nome) del controllo interessato. A quel punto ciascun controllo valuterà se e' stato chiamato o meno e si comporterà di conseuenza.
Non so se risponde al tuo problema, in caso mandami più dettagli,
ciao
Andrea