DeretCode|

Tips, Trik dan Tutorial
Seputar IT, Coding, Internet Marketing, Keahlian, Pendidikan, Hobi Dan Lainnya
Night :

Membuat Filter Dan Sort Kolom Pada DataGridView Seperti Di Excel - VB.NET

advertisement
Membuat Filter Dan Sort Kolom Pada DataGridView Seperti Di Excel - VB.NET

DataGridView adalah sebuah control yang berbentuk table dan memiliki fungsi untuk merepresentasikan data. Pada kesempatan kali ini kita akan membuat sebuah DataGridView yang memiliki fungsi Filtering dan Sorting pada setiap kolomnya seperti di Excel. Kita tidak menggunakan DataGridView bawaan dari vb.net melainkan menggunakan library .dll yang ada Nudget Package Meneger. Langsung ke tutorialnya saja.

Instalasi Packgae AdvacedDataGridView

  1. Buka project vb.net mu, kemudian pada menubar klik Project - Manage Nudget Packages. Kemudian akan terbuka halaman Nudget Package Manager.
  2. Pastikan kamu terkoneksi ke internet terlebih dahulu untuk mendownload packagenya. Pada kolom pencarian silahkan ketik ADGV dan kemudian klik install, seperti pada gambar berikut.

    Install ADGV via Nudget
  3. Untuk menampilkan AdvancedDataDridView yang sudah kita install tadi kedalam toolbox control. Jika AdvancedDataGridView tidak muncul otomatis di Toolbox silahkan pilih di bagian Toolbox Klik kanan pada group Data dan klik choose items. Kemudian akan muncul popup berikut

    Menampilkan control ke toolbox
    Klik tab .NET Framwork Components - Browse. Kemudian cari file AdvancedDataGridView.dll kemudian klik open.
Sekarang AdvancedDataGridView sudah bisa kita gunakan. Sekarang tinggal bagaimana cara menggunakannya.

Cara Menggunakan AdvancedDataGridView

  1. Buat sebuah Class SqlHelper seperti pada artikel yang pernah kita bahas sebelumnya, jika kalian belum pernah membuatnya silahkan baca artikel Cara membuat SqlHelper di Vb.net.
  2. Buat Sebuah Item baru berupa Windows Form
  3. Drag and Drop Control Adgv tadi kedalam form yang sudah kita buat, seperti gambar berikut.

  4. Untuk beralih ke code view, kalian bisa menekan F7 pada keyboad atau klik kanan pada form kemudian klik View Code.
  5. Buat sebuah variable berupa BindingSource seperti berikut
      
      Public Class FormMain
        Dim bs As BindingSource = New BindingSource()
      End Class
      
    BindingSource inilah yang nantinya digunakan untuk memfilter dan mensorting data membindingnya ke datagridview. sehingga ketika data yang ada di dalam BindingSource berubah, maka data yang ditampilkan didalam datagridview juga akan berubah.

  6. Buat Event Handle  FormLoad seperti berikut.
      
      Private Sub Form_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            'Koding didalam sini untuk mengambil dan menampilkan data'
      End Sub
      
    Untuk menkonfigurasi koneksi, mengambil data, dan menampilkannya kedalam DataGridView kita menggunakan Event Handle FormLoad seperti Diatas.
  7. Di dalam Methode Event Handle Formload yang tadi sudah kita buat, silahkan paste code berikut.
      
       Private Sub Form_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            setConnection("Data Source=PC177141\SQLEXPRESS;User ID=sa;pwd=P@ssw0rd!;Initial Catalog=MYAPP") 'Ganti dengan koneksi kalian
            Dim query = "select * from users" 'Silahkan ganti dengan nama table yang kalian tampilkan datanya
            bs.DataSource = getDataSet(query).Tables(0)
            AdvancedDataGridView1.DataSource = bs
            AdvancedDataGridView1.AllowUserToAddRows = False
        End Sub
      

  8. AdavancedDataGridView memiliki Events Handle Berupa FilterStringChanged dan SortStringChanged. Event inilah yang akan kita gunakan untuk memfiltering dan mensorting data yang ada di dalam BindingSource tadi. Cara menggunakannya silahkan paste code berikut.
      
        Private Sub AdvancedDataGridView1_SortStringChanged(sender As Object, e As EventArgs) Handles AdvancedDataGridView1.SortStringChanged
            bs.Filter = AdvancedDataGridView1.SortString
        End Sub
    
        Private Sub AdvancedDataGridView1_FilterStringChanged(sender As Object, e As EventArgs) Handles AdvancedDataGridView1.FilterStringChanged
            bs.Filter = AdvancedDataGridView1.FilterString
        End Sub
      
  9. Koding akhir yang sudah kita buat tadi akan seperti berikut.
      
    Public Class FormMain
        Dim bs As BindingSource = New BindingSource()
    
        Private Sub Form_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            setConnection("Data Source=PC177141\SQLEXPRESS;User ID=sa;pwd=P@ssw0rd!;Initial Catalog=MYAPP")
            Dim query = "select * from users"
            bs.DataSource = getDataSet(query).Tables(0)
            AdvancedDataGridView1.DataSource = bs
            AdvancedDataGridView1.AllowUserToAddRows = False
        End Sub
    
        Private Sub AdvancedDataGridView1_SortStringChanged(sender As Object, e As EventArgs) Handles AdvancedDataGridView1.SortStringChanged
            bs.Filter = AdvancedDataGridView1.SortString
        End Sub
    
        Private Sub AdvancedDataGridView1_FilterStringChanged(sender As Object, e As EventArgs) Handles AdvancedDataGridView1.FilterStringChanged
            bs.Filter = AdvancedDataGridView1.FilterString
        End Sub
    End Class
      

Oke sudah selesai, selanjutnya jika kalian menjalankan programnya hasilnya akan seperti gambar berikut.

Note : Jika kalian ingin menonaktifkan fitur filtering atau sorting pada kolom tertentu, kalian bisa menggunakan code berikut.
  
 AdvancedDataGridView1.DisableFilter(AdvancedDataGridView1.Columns("Nama Kolom"))
  
Sekian dulu tutorial cara membuat filter dan sort kolom pada datagridview. Jangan lupa di share jika kalian merasa artikel ini bermanfaat, dan jangan lupa tinggalkan jejak dengan berkomentar dibawah ini.  File projectnya bisa kalian download di sini.
advertisement



0 Komentar untuk " Membuat Filter Dan Sort Kolom Pada DataGridView Seperti Di Excel - VB.NET"

Silahkan berkomentar dengan baik dan bijak!