我正在运行时创建表单,文本框和按钮,并且在尝试为按钮的单击事件添加事件处理程序时遇到问题(下面的代码)。我认为内联函数可能是要走的路,但是我没有用过这些很多东西,看看用C#编写的例子但是没能把它转换成vb.net,可能这不是通往走了。
至于我采用这种方法的原因只是为了学习如何做到这一点,我可以创建一个Windows窗体并按照这种方式进行,但尝试新的东西总是好的。愿意接受对我的代码的批评,但是请一如既往地使这个有建设性。
Dim CommandButton As New Button
With CommandButton
.Text = "Submit"
.Name = "btnComments"
.Location = New Point(232, 110)
.Font = New Font("Tahoma", 12)
.Size = New System.Drawing.Size(130, 32)
End With
Dim TextBox As New TextBox
With TextBox
.Name = "CommentsText"
.Location = New Point(20, 20)
.Size = New System.Drawing.Size(342, 80)
.Multiline = True
.BackColor = Color.Snow
End With
Dim CommentsForm As New Windows.Forms.Form
With CommentsForm
.StartPosition = FormStartPosition.CenterParent
.Height = 195
.Width = 400
.Text = "Enter despatch comments for " & Me.ReferenceValue
.Controls.Add(TextBox)
.Controls.Add(CommandButton)
.MaximizeBox = False
.MinimizeBox = False
.FormBorderStyle = FormBorderStyle.FixedDialog
.ShowDialog()
End With
答案 0 :(得分:0)
要动态地向控件添加处理程序,请使用AddHandler yourControlName.eventToHandle, AddressOf handlingMethod
。
答案 1 :(得分:0)
您可以使用AddHandler为任何事件添加处理程序。
例如,这可能是:
AddHandler theButton.Click,AddressOf Me.theButton_Click