vb.net, DataGridView, Enter, Cell

การสร้าง DataGridView มาใช้เองค่ะ โดยจะสะดวกขึ้นในส่วนของการ กดปุ่ม Enter ภายหลังจากเรากรอกข้อมูลใน Cell เสร็จเรียบร้อย แล้วให้เลื่อน Cell ไปทางด้านขวาอัตโนมัติ ซึ่งปกติแล้วจะเลื่อนลงมายัง Cell ด้านล่าง สามารถสร้างได้ดังนี้ค่ะ...

1. คลิกขวาที่ชื่อ Project >Add>New Item...>Code>Class

เป็นการสร้าง Class ขึ้นมาใหม่ค่ะ แล้วตั้งชื่อว่า MyDataGridView.vb แล้วคลิกเลือก Add 

2. จะได้ Class ขึ้นมาดังนี้

Public Class MyDataGridView

End Class

3. พิมพ์ข้อความดังต่อไปนี้

Public Class MyDataGridView

Inherits DataGridView

Protected Overrides Function ProcessDialogKey(ByVal keydata As Keys) As Boolean

Dim key As Keys = keydata And Keys.KeyCode
If key = Keys.Enter Then


Return Me.ProcessTabKey(keydata)

End If
Return MyBase.ProcessDialogKey(keydata)

End Function

Protected Overrides Function ProcessDataGridViewKey( _
ByVal e As System.Windows.Forms.KeyEventArgs) As Boolean

If e.KeyCode = Keys.Enter Then

Return Me.ProcessTabKey(e.KeyData)

End If
Return MyBase.ProcessDataGridViewKey(e)

End Function

End Class

4. หลังจากนั้นคลิกขวาที่ชื่อ Project เลือก Build

5. เราจะได้ Components เพิ่มขึ้นมา ไปที่หน้าออกแบบจะเห็น Control ที่ชื่อว่า MyDataGridView ที่เราสร้างขึ้นมาเอง สามารถนำไปใช้งานได้ตามปกติเหมือนกัน DataGridView ทั่วไป แต่ต่างกันที่สามารถกดปุ่ม Enter แล้วจะเลื่อนไปยัง Cell ทางด้านขวา...