| 
 | 
มีตัวอย่างอยู่ที่เรื่อง [VB.NET] การสร้างจดหมายเวียน หรือ Mail Merge ด้วยของฟรี Syncfusion แล้วครับ ...  
 
หรือใช้ฟังค์ชั่น CBool ในการแปลงตัวเลขจำนวนเต็มให้เป็น TRUE/FALSE หรือ Checked/UnChecked ... จับลาก DataGridView มาวางไว้บนฟอร์ม แก้ชื่อให้เป็น dgvData เท่านั้นพอ เพราะที่เหลือจะใช้โค้ดทั้งหมดครับ 
- Public Class frmDataGridViewCheckBox
 
  
-     Private Sub frmDataGridViewCheckBox_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
 
 -         Call SetupDGVData(dgvData)
 
 -         Call FillDataSample()
 
 -     End Sub
 
  
-     Private Function FillDataSample() As DataTable
 
 -         FillDataSample = Nothing
 
 -         Try
 
 -             Dim tbl As New DataTable
 
 -             tbl.Columns.Add("ProductPK", GetType(Integer))
 
 -             tbl.Columns.Add("ProductName", GetType(String))
 
 -             tbl.Columns.Add("chkStock", GetType(Boolean))
 
 -             '// กำหนด 0 = Unchecked, 1 = Checked
 
 -             '// หากอยากได้กลับกันก็ใช้ Not (CBool(1))
 
 -             Dim row As String() = New String() {"1", "Product 1", CBool(1)}
 
 -             dgvData.Rows.Add(row)
 
 -             row = New String() {"2", "Product 2", CBool(0)}
 
 -             dgvData.Rows.Add(row)
 
 -             row = New String() {"3", "Product 3", CBool(1)}
 
 -             dgvData.Rows.Add(row)
 
 -             row = New String() {"4", "Product 4", Not (CBool(1))}
 
 -             dgvData.Rows.Add(row)
 
 -             Return tbl
 
 -         Catch ex As Exception
 
 -             MessageBox.Show(ex.Message)
 
 -         End Try
 
 -     End Function
 
  
-     '// เหตุการณ์ในการคลิ๊กเมาส์ลงในแต่ละเซลล์ของหลักที่ 3 (Index = 2)
 
 -     Private Sub dgvData_CellContentClick(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvData.CellContentClick
 
 -         '// Column Index = 2
 
 -         If dgvData.Columns(e.ColumnIndex).Name = "chkStock" Then
 
 -             Dim isChecked As Boolean = dgvData.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
 
 -             If isChecked = False Then
 
 -                 dgvData.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = True
 
 -             Else
 
 -                 dgvData.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = False
 
 -             End If
 
 -         End If
 
 -     End Sub
 
  
-     ' / --------------------------------------------------------------------------------
 
 -     '// Initialize DataGridView @Run Time
 
 -     Private Sub SetupDGVData(ByRef DGV As DataGridView)
 
 -         With dgvData
 
 -             .RowHeadersVisible = False
 
 -             .AllowUserToAddRows = False
 
 -             .AllowUserToDeleteRows = False
 
 -             .AllowUserToResizeRows = False
 
 -             .MultiSelect = False
 
 -             .SelectionMode = DataGridViewSelectionMode.FullRowSelect
 
 -             .ReadOnly = True
 
 -             .Font = New Font("Tahoma", 9)
 
 -             ' Columns Specified
 
 -             .Columns.Add("ProductPK", "ProductPK")
 
 -             .Columns.Add("ProductName", "Product Name")
 
 -             '// Select Print.
 
 -             Dim chkStock As New DataGridViewCheckBoxColumn
 
 -             .Columns.Add(chkStock)
 
 -             chkStock.HeaderText = "In Stock"
 
 -             chkStock.Name = "chkStock"
 
 -             With .Columns("chkStock")
 
 -                 .HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
 
 -                 .DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
 
 -             End With
 
 -             ' Autosize Column
 
 -             .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill
 
 -             '// Even-Odd Color
 
 -             .AlternatingRowsDefaultCellStyle.BackColor = Color.AliceBlue
 
 -             ' Adjust Header Styles
 
 -             With .ColumnHeadersDefaultCellStyle
 
 -                 .BackColor = Color.Navy
 
 -                 .ForeColor = Color.Black ' Color.White
 
 -                 .Font = New Font("Tahoma", 9, FontStyle.Bold)
 
 -             End With
 
 -         End With
 
 -     End Sub
 
  
- End Class
 
  คัดลอกไปที่คลิปบอร์ด 
 |   
- 
 
 
 
 
 
 
 
 |