我创建了一个usercontrol并将其添加到表单中。 我想使用Private WithEvents _Parent As Form接收表单的事件。 但是没有收到任何事件。
附上了我的usercontrol的整个代码。
有人看到我做错了吗?
Public Class UserControl1
Private WithEvents _Parent As Form
Public Sub New()
InitializeComponent()
_Parent = Me.Parent
End Sub
Private Sub _Parent_Activated(sender As Object, e As EventArgs) Handles _Parent.Activated
MsgBox("activated")
End Sub
Private Sub _Parent_Resize(sender As Object, e As EventArgs) Handles _Parent.Resize
MsgBox("resize")
End Sub
结束班
答案 0 :(得分:1)
调用构造函数时,尚未生成父级(在创建类之后,Windows窗体控件将添加到其父级)。此时Me.Parent
会返回Nothing
。
处理Me.ParentChanged
初始化_Parent
:
Private Sub UserControl1_ParentChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.ParentChanged
_Parent = Me.Parent
End Sub