Manejo de un clic para todos los controles en un formulario

Tengo un .NET UserControl (FFX 3.5). Este control contiene varios controles secundarios: un panel, un par de etiquetas, un par de cuadros de texto y otro control personalizado. Quiero manejar un clic derecho en cualquier parte del Control base, de modo que haga clic derecho en cualquier control secundario (o secundario de un secundario en el caso del Panel). Me gustaría hacerlo para que se pueda mantener si alguien realiza cambios en el Control sin tener que conectar controladores para nuevos controles, por ejemplo.

Primero intenté anular el WndProc, pero como sospechaba, solo recibo mensajes por clics en el Formulario directamente, no ninguno de sus hijos. Como semi-hack, agregué lo siguiente después de InitializeComponent:

  foreach (Control c in this.Controls)
  {
    c.MouseClick += new MouseEventHandler(
      delegate(object sender, MouseEventArgs e)
      {
        // handle the click here
      });
  }

Esto ahora obtiene clics para los controles que admiten el evento, pero las Etiquetas, por ejemplo, todavía no obtienen nada. ¿Hay una manera simple de hacer esto que estoy pasando por alto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta