如何控制在應用程式執行期間自動創建的一些控制元件?
我的添加控制元件
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim NewCheckbox As CheckBox
For i As Integer = 2 To 14
NewCheckbox = New CheckBox
NewCheckbox.Size = New Drawing.Size(15, 14)
NewCheckbox.Location = New Point(98, 40)
NewCheckbox.Name = "cbcard" & i
Me.Controls.Add(NewCheckbox)
next
我的復選框控制元件添加,我舉了一個例子來創建一個復選框控制元件,但它應該對任何形式的控制元件都有效,無論是文本框還是按鈕。
如何檢測這些未創建但將在執行期間創建的控制元件?復選框名稱將為cbcard1, cbcard2,cbcard3最多 14 個。
但我希望它采用處理程式的形式,或者它可能應該與計時器一起使用。
Private Sub Checkbox_Changed(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Checkbox.Changed
If Checkbox.checked = true
MsgBox("")
End If
End Sub
uj5u.com熱心網友回復:
您可以使用AddHandler語法訂閱事件。
For i As Integer = 2 To 14
NewCheckbox = New CheckBox
NewCheckbox.Size = New Drawing.Size(15, 14)
NewCheckbox.Location = New Point(98, 40)
NewCheckbox.Name = "cbcard" & i
Me.Controls.Add(NewCheckbox)
'subscribe to the CheckChanged event (as an example)
AddHandler NewCheckbox.CheckChanged, AddressOf Checkbox_Changed
Next
'all dynamically created checkboxes were subscribed to this event
Private Sub Checkbox_Changed(ByVal sender As System.Object, ByVal e As System.EventArgs)
'sender is the specific checkbox that was changed out of all subscribed checkboxes
Dim checkBox = DirectCast(sender, CheckBox)
If checkbox.checked = true Then MsgBox(checkBox.Name)
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/402844.html
標籤:
