|
เนื่องจาก VB.NET ไม่มี Index ให้ใช้งานกับ Control ต่างๆ จึงทำให้ต้องประกาศเหตุการณ์ที่ทำซ้ำๆกันตลอด เรามีทางแก้ปัญหาได้ด้วยการนำเอา List ของ Control มาใช้งานแทน ...
หน้าจอออกแบบปุ่มคำสั่ง (Button)
มาดูโค้ดกันเถอะ ...
- Public Class Form1
- Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
- Dim myButtons As List(Of Button) = New List(Of Button)
- myButtons.AddRange({Button1, Button2, Button3, Button4, Button5, Button6, Button7, Button8, Button9, Button10})
- '// OR
- 'myButtons.Add(Button1)
- 'myButtons.Add(Button2)
- ' ...................................
- 'myButtons.Add(Button10)
- Dim i As Byte = 0
- For Each btn In myButtons
- With btn
- .Text = i + 1
- .Tag = i
- End With
- '// Force events handler.
- AddHandler myButtons(i).Click, AddressOf ClickButton
- i += 1
- Next
- End Sub
- '// Click Button event, get the text of button
- Public Sub ClickButton(ByVal sender As Object, ByVal e As System.EventArgs)
- Dim btn As Button = sender
- MessageBox.Show("คุณคลิ๊ก [" + btn.Text + "]" & vbCrLf & "Tag=" & btn.Tag)
- End Sub
- End Class
คัดลอกไปที่คลิปบอร์ด
|
|