Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Panel1.Controls.Clear()
Dim patiekalai = New Button()
Panel1.Controls.Add(patiekalai)
patiekalai.Location = New Point(0, 0)
patiekalai.Size = New Size(80, 50)
patiekalai.Image = Image.FromFile("../M/Karštieji patiekalai.jpg")
Private Sub Patiekalai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Patiekalai.Click
尝试为动态创建的按钮patiekalai添加Click事件处理程序时出错:
Handles子句需要在包含类型或其基类型之一中定义WithEvents变量。
答案 0 :(得分:1)
您无法执行此操作,因为在运行时单击Button1之前该按钮不存在。你想要做的是在运行时添加一个处理程序。
从“Patiekalai_Click”方法中删除“Handles”。然后,在运行时创建控件之后:“patiekalai.Image = Image ....”添加此行
AddHandler patiekalai.Click AddressOf Patiekalai_Click
这告诉按钮的click事件调用所选方法。