Jinak to ale bohužel nepůjde. První problém jde jednoduše vyřešit cyklem v konstruktoru UserControlu:
Public Class UserControl1
Sub New()
InitializeComponent()
For Each ctrl As Control In Controls
AddHandler ctrl.MouseEnter, AddressOf Controls_MouseEnter
Next
End Sub
Private Sub Controls_MouseEnter(ByVal sender As Object, ByVal e As EventArgs)
OnMouseEnter(e)
End Sub
End Class
To zajistí, že pokud bude kdykoliv přidán další ovládací prvek v návrhovém režimu do UserControlu, automaticky se mu přiřadí handler na MouseEnter (pro zjednodušení jsem nedělal MouseLeave). Problému číslo dvě nerozumím. UserControl je většinou skupina nějakých běžných ovládacích prvků, který se využívá na více místech v aplikaci a do kterého se již za běhu nic nepřidává. To by potom ztrácelo smysl.
|