Untuk control ComboBox yang diambil dari ToolBox method SelectedIndexChange sudah tersedia, Biasa nya fungsi ini di gunakan untuk menampilkan data/informasi jika nilai dari control ini dipilih.
Sedangkan untuk ComboBox pada DataGridView kita harus melakukan beberapa langkah dengan coding.
Pertama ketik Sintaks dibawah ini :
Private Sub NamaGrade_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
Try
Dim comboBox1 As ComboBox = CType(sender, ComboBox)
'Ketikkan sintaks untuk menampilkan data yang di inginkan
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Lalu untuk mengaktifkan fungsi diatas, ikuti langkah dibawah.
Masih pada jendela Code, pilih control DataGridView pada ComboBox Class Name lalu pilih Method Name nya EditingControlShowing
Dan ketikkan sintaks dibawah ini :
Private Sub DataGridViewTTB_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridViewTTB.EditingControlShowing
Dim cb As ComboBox = TryCast(e.Control, ComboBox)
If cb IsNot Nothing Then
RemoveHandler cb.SelectedIndexChanged, AddressOf NamaGrade_SelectedIndexChanged
Select Case DataGridViewTTB.CurrentCell.ColumnIndex
Case 1 'Posisi / nomor kolom control ComboBox pada DatagridView
AddHandler cb.SelectedIndexChanged, AddressOf NamaGrade_SelectedIndexChanged
End Select
End If
End Sub
Dengan ini kita bisa menambahkan method untuk control-control yang kita buat pada DataGridView, seperti method Leave pada TextBox. Ketikkan Sintaks dibawah ini.
Private Sub Jumlah_leave(ByVal sender As Object, ByVal e As EventArgs)
Try
Dim a, b, c, d, z As Integer
Dim total As Double
a = DataGridViewTTB.CurrentRow.Cells(4).Value
b = DataGridViewTTB.CurrentRow.Cells(5).Value
c = DataGridViewTTB.CurrentRow.Cells(6).Value
d = DataGridViewTTB.CurrentRow.Cells(7).Value
z = a * b * c * d
total = z / 5085.31
DataGridViewTTB.CurrentRow.Cells(8).Value = total
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Lalu pada method EditingControlShowing seperti di atas tambahkan sintaks dibawah ini.
Dim tb As TextBox = TryCast(e.Control, TextBox)
If tb IsNot Nothing Then
RemoveHandler tb.Leave, AddressOf Jumlah_leave
Select Case DataGridViewTTB.CurrentCell.ColumnIndex
Case 7 'Posisi / nomor kolom control TextBox pada DatagridView
AddHandler tb.Leave, AddressOf Jumlah_leave
End Select
End If
Tidak ada komentar:
Posting Komentar