Binding Manual Combobox pada VB.Net
Kemarin saat developt software untuk versi .NET saya sempat kebingungan, mungkin karena masih tersihir dengan metode binding pada VB.6 Jadi saya hampir saja menggunakan gaya pemerograman VB.6 untuk memasukkan data item kedalam combo box. Ditengah perjalanan codeing saya langsung buntu, bagaimana tidak untuk pindah antar baris jika di VB.6 mudah sekali digunakan cukup menggunakan properties .MoveNext pada object recordset yang dimaksud kita langsung bisa membinding semua data kedalam combo. Untuk jelasnya bisa dilihat pada Code Dibawah ini
'Visual Basic 6.0 Style
'Using Recordset Object
StrCariPasien = "Select [Register Pasien],[Nomor Rekam Medik],[Nama Pasien],[Alamat],[Jenis Pengenal]," & _
"[Nomor Pengenal],[Handphone],[Phone] From Pasien Where [Nama Pasien] Like '" & Trim(TxtSearch.Text) & "%'"
Set RsCariPasien = Nothing
Set RsCariPasien = New ADODB.Recordset
RsCariPasien.Open StrCariPasien, Conn, adOpenDynamic, adLockOptimistic
CboSearch.Clear
If RsCariPasien.RecordCount <> 0 Then
'Looping sebanyak data yang ada
With RsCariPasien
.MoveFirst
While Not .EOF
CboSearch.AddItem Trim(.Fields("Nama Pasien").Value) & _
" [RM: " & Trim(.Fields("Nomor Rekam Medik").Value) & "] [Alamat: " & _
Trim(.Fields("Alamat").Value) & "] [Pengenal: " & _
Trim(.Fields("Jenis Pengenal").Value) & "-" & _
Trim(.Fields("Nomor Pengenal").Value) & "] [HP: " & _
Trim(.Fields("Handphone").Value) & "] [Phn: ]" & _
Trim(.Fields("Phone").Value) & " ?" & Trim(.Fields("Register Pasien").Value)
.MoveNext
Wend
End With
End If
Sementara itu untuk VB.NET metode diatas tidaklah mungkin untuk dilakukan jika kita menggunakan ADO.NET karena arsitekturnya yang disconected. Berhari-hari saya mengalami kebuntuan ide hanya karena problem ini,tapi alhamdulillah secara tidak sengaja saya mendapatkan ide, kenapa Dataset yang saya buka tidak saya convert dulu keDatarow untuk memudahkan pindah antar baris? Berangkat dari ide diatas saya langsung membuat code dibawah ini
'VB.NET style
'Using Dataset and datarow
'Deklarasikan fungsi untuk buka dataset
'Fungsi ini bisa dipakai berkali-kali
Public Function OpenDataSet(ByVal SqlCommand As String) _
As DataSet
Dim Command As New MySqlCommand(SqlCommand, Koneksi)
Dim Adapter As MySqlDataAdapter = New MySqlDataAdapter()
Adapter.SelectCommand = Command
Dim Ds As New DataSet
Adapter.Fill(Ds)
Return Ds
End Function
'Panggil fungsi opendataset dan masukkan data kedalam combo
Private Sub CboBaruKategori_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CboBaruKategori.Click
dtKelompokData = New DataTable
dtKelompokData = GetData("Insert Into `KelompokData` (`Keterangan`,`Jenis`) Values ('" & _
Trim(CboKategori.Text) & "','Kategori')")
dsKelompokData = New DataSet
dsKelompokData = OpenDataSet("Select * From `KelompokData` Where `Jenis` = 'Kategori'")
CboKategori.Items.Clear()
'Looping sebanyak data yang ada
For Each DataRow In dsKelompokData.Tables(0).Rows
CboKategori.Items.Add(Trim(DataRow("Keterangan").ToString))
Next
End Sub
Jika dilihat dari penggalan code diatas, dari segi arsitektur dan code program antaran VB.6 dan VB.NET sama sekali berbeda, Perhatikan code yang berwarna merah diatas, bisa dilihat perbedaan model loop pada VB.6 dan VB.NET, walaupun tujuannya sama yakni untuk membinding semua record yang diquery berdasarkan QueryString. Sekian tulisan singkt ini saya buat, semoga bisa membantu bagi rekan-rekan programer. Semoga Allah tetap menganugerahkan taufik dan hidayahnya bagi hatiku yang kotor ini
.
Incoming search terms:
- Add DataRows to a Combobox in VB NET vb net
- vb net combobox add items
- set combo value member vb net
- Looping pada vb
- combobox vb adodb
- combobox vb
- combobox value in vb net
- combo box pada vb net
- combo box on vb net
- vb net reset combobox






stmikbg.com adalah web untuk komunitas bagi anak-anak stmik bumigora khususnya dan anak-anak IT umumnya, baek yang cupu maupun yang expert.