我有一个现在不存在的面板,它将在以后的代码中创建,名为panel1。这意味着我无法通过Handles panel1.MouseEnter
访问它,但是我具有在所有控件中搜索面板的功能:
Public Function FindPanelControls(panels As List(Of String))
Dim panelcontrols As New List(Of Panel)
For Each panel In panels
Dim someVariable As Control
Dim SearchedControls = Me.Controls.Find(key:=panel, searchAllChildren:=True)
If SearchedControls.Count = 1 Then
someVariable = SearchedControls(0)
panelcontrols.Add(someVariable)
End If
Next
Return panelcontrols
End Function
现在我这样调用函数:
Dim panels As List(Of Panel) = FindPanelControls(GetButtonPanels)
GetButtonPanels()是一个为我提供所有面板名称的函数。 如果我想更改这些面板的背景色,请使用以下方法:
For Each panel In panels
panel.BackColor = Color.Red
Next
但是我如何处理这些面板的事件???我需要MouseEnter,MouseLeave和Click。 感谢您的帮助。