Ciao
Dato che stai lavorando con degli UserControl, quindi controlli di tua creazione, puoi intercettare dalla classe l'evento Click del Parent in modo da sapere quando viene clickato sul Panel. Ad esempio potresti usare un codice tipo questo:
Public Class MyUserControl
Inherits UserControl
'Questo è l'ultimo Parent del controllo
Dim lastParent As Control = Nothing
'Gestendo l'evento ParentChanged ottiene il Parent del controllo,
'quindi gestisce l'evento Click del Parent per fare il cambio di colore:
Private Sub MyUserControl_ParentChanged(ByVal sender As Object, ByVal e As EventArgs) _
Handles MyBase.ParentChanged
'Rimuove l'associazione al gestore eventi del Click per l'ultimo Parent
If lastParent IsNot Nothing Then
RemoveHandler lastParent.Click, AddressOf Parent_Click
End If
'Associa il nuovo gestore eventi
If Parent IsNot Nothing Then
AddHandler Parent.Click, AddressOf Parent_Click
End If
'Imposta l'ultimo Parent su quello corrente
lastParent = Parent
End Sub
Private Sub Parent_Click(ByVal sender As Object, ByVal e As EventArgs)
'Cambia il colore di sfondo
End Sub
End Class
Luca