怎么为在运行中添加的控件添加事件处理程序
如何为在运行中添加的控件添加事件处理程序?
比如说
dim x as new textbox
x.top=14
x.left=3
x.width=100
x.height=21
me.controls.add(x)
怎么添加控件x的事件处理程序呢?
又:如果我添加了两个textbox,这两个textbox想共享同样的事件处理程序,请问该如何写?
------解决方案--------------------
Public Class Form1
Dim WithEvents x As New TextBox
Dim WithEvents y As New TextBox
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
x.Top = 14
x.Left = 3
x.Width = 100
x.Height = 21
Me.Controls.Add(x)
AddHandler x.DoubleClick, AddressOf iDoubleClick
AddHandler y.DoubleClick, AddressOf iDoubleClick
End Sub
Private Sub x_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles x.Click
MsgBox(111)
End Sub
Private Sub iDoubleClick(ByVal sender As Object, ByVal e As System.EventArgs)
MsgBox(222)
End Sub
End Class
比如说
dim x as new textbox
x.top=14
x.left=3
x.width=100
x.height=21
me.controls.add(x)
怎么添加控件x的事件处理程序呢?
又:如果我添加了两个textbox,这两个textbox想共享同样的事件处理程序,请问该如何写?
------解决方案--------------------
Public Class Form1
Dim WithEvents x As New TextBox
Dim WithEvents y As New TextBox
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
x.Top = 14
x.Left = 3
x.Width = 100
x.Height = 21
Me.Controls.Add(x)
AddHandler x.DoubleClick, AddressOf iDoubleClick
AddHandler y.DoubleClick, AddressOf iDoubleClick
End Sub
Private Sub x_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles x.Click
MsgBox(111)
End Sub
Private Sub iDoubleClick(ByVal sender As Object, ByVal e As System.EventArgs)
MsgBox(222)
End Sub
End Class