Hola.. me he sentado un rato a tratar de hacer lo que quieres.. no fué objetivamente a ayudarte.. pero se me hizo interesante poder hacer lo que dices...
Crea un proyecto nuevo de windows forms
Imaginate que tienes 3 formularios, el padre (Padre) y dos formulario hijos (Hijo1, Hijo2)
En el formulario padre declaras a nivel clase
Public Class Padre
Inherits System.Windows.Forms.Form
Protected WithEvents frm As Form2
Protected WithEvents frm2 As Form3
'...
Ahora.. Cambia la propiedad IsMdiContainer del formulario padre a true
Agrega 2 botones al formulario padre:
Button1 y Button2
Agrega el siguiente evento a ambos (Hijo1 e Hijo2)
Public Event Seleccionado(ByVal e As Form)
Y en el evento Enter de c/u de los formularios hijos:
'En Hijo1
Private Sub Hijo1_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Enter
RaiseEvent Seleccionado(Me)
End Sub
'En hijo 2
Private Sub Hijo2_Enter(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Enter
RaiseEvent Seleccionado(Me)
End Sub
En el codigo del formulario Padre agregas el siguiente codigo:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
frm = New Hijo1()
frm.MdiParent = Me
frm.Show()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
frm2 = New Hijo2()
frm2.MdiParent = Me
frm2.Show()
End Sub
Y finalmente, para cachar el evento agregas el siguiente codigo...
Private Sub frm_Seleccionado(ByVal e As System.Windows.Forms.Form) Handles frm.Seleccionado
MsgBox(e.Name)
End Sub
Private Sub frm2_Seleccionado(ByVal e As System.Windows.Forms.Form) Handles frm2.Seleccionado
MsgBox(e.Name)
End Sub
Espero que te sirva..... Bueno... no tenia na que hacer y me puse a moberle...
Bye