Skip to main content

Membuat Pengurutan Di ListView Ketika Di Klik Bagian Headernya

Assalamu'alaikum ......

Waduh masih ngantuk nih sebenernya, tapi dari pada bengong pagi-pagi mending duduk sambil ngopi terus internetan deh. Tapi ketika buka browser bingung mau ngapain lagi. Hahaha payah deh, akhirnya saya putusin buat share aja tentang pengalaman saya bikin tabel yang bisa di urutin isinya ketika saya klik headernya, terinspirasi dari tabel kolom milik Microsoft Excel.

Setelah lama bereksperimen ketemu juga koding yang cocok, berikut tampilan ketika saya klik header kolom di tabel program buatan saya :
Tampilan sebelum dirutkan
Bisa kita lihat tampilan diatas adalah sebelum dirutkan datanya, pnegurutan bisa ditentukan dari nomor, ID, Kategori maupun Nama Barang tergantung header mana yang di klik dalam contoh diatas pengurutan berdasar nomor. Berikut tampilan setelah di urutkan atau setelah saya klik header nomor :

Tampilan sesudah dirutkan
 Dalam kasus diatas saya aplikasikan ke dalam ListView bukan DataGridView karena menurut saya tampilannya yang lebih dinamis dan fleksibel. Tapi kalau mau di aplikasin pada selain ListView bisa saja, dengan beberapa editan. Berikut koding yang saya gunakan, saya buat dengan VB Class

Class ListViewItemComparer
    Implements IComparer
    Private col As Integer
    Private order As SortOrder

    Public Sub New()
        col = 0
        order = SortOrder.Ascending
    End Sub

    Public Sub New(ByVal column As Integer, ByVal order As SortOrder)
        col = column
        Me.order = order
    End Sub

    Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare
        Dim returnVal As Integer

        Try

            Dim firstDate As System.DateTime = DateTime.Parse(CType(x,  _
                                    ListViewItem).SubItems(col).Text)
            Dim secondDate As System.DateTime = DateTime.Parse(CType(y,  _
                                      ListViewItem).SubItems(col).Text)

            returnVal = DateTime.Compare(firstDate, secondDate)
            
        Catch

            returnVal = [String].Compare(CType(x,  _
                              ListViewItem).SubItems(col).Text, CType(y, ListViewItem).SubItems(col).Text)
        End Try


        If order = SortOrder.Descending Then

            returnVal *= -1
        End If
        Return returnVal
    End Function

End Class


Kita juga harus memberikan koding berikut ke dalam form aplikasinya, dan jangan lupa siapkan ListView-nya juga


Private Sub lstBarang_ColumnClick(ByVal sender As Object, ByVal e As System.Windows.Forms.ColumnClickEventArgs) Handles lstBarang.ColumnClick
Dim sortColumn As Integer = -1
        With lstBarang
            
            If e.Column <> sortColumn Then
               
                sortColumn = e.Column
                
                .Sorting = SortOrder.Ascending
            Else
                
                If .Sorting = SortOrder.Ascending Then
                    .Sorting = SortOrder.Descending
                Else
                    .Sorting = SortOrder.Ascending
                End If
            End If
            .ListViewItemSorter = New ListViewItemComparer(e.Column, lstBarang.Sorting)
        End With
    End Sub


Jangan lupa disini event atau proses pengurutan nya saya tentukan ketika di klik bukan double klik, tapi itu terserah ke pembuat program lagi.

Ok, mungkin itu dulu yang bisa saya share

Wassalamu'alaikum .....

Comments

  1. Jangan sungkan untuk komentar disini, temen-temen bisa share trik lain jika ada

    ReplyDelete
  2. God Job brow.. Its Very2 Helped

    ReplyDelete

Post a Comment

Komentar spam, menyertakan link aktif dan alamat blog tidak akan muncul. Tidak semua pertanyaan sempat atau bisa dijawab. Thanks for visiting and the comment :)

Popular posts from this blog

Software Gratis Toko Online berbasis PHP

Assalamu'alaikum Warahmatullahi Wabarakatuh Temen-temen, kali ini saya mau share tentang programming lagi nih tapi sebetulnya ini sudah lama dibahas oleh blogger lainnya. Jadi disini saya hanya ingin membuat catatan kecil di blog saya supaya tidak kesulitan jika nanti ada butuh. Untuk temen-temen yang ingin belajar dan memiliki toko online sendiri mungkin bisa coba software ini. Software ini gratis dan mudah pemakaiannya. Memang software ini tidak selengkap joomla, ecommerce ataupun CMS lainnya. Namun menurut saya sudah cukup jika temen-temen ingin memiliki toko online sederhana. Nama software ini adalah shop-script dari webasyst . Shop-Script merupakan software shopping cart berbasis PHP dan bisa di download gratis dari sini . Cara menginstall dan mengkonfigurasinya pun sangat mudah. Claim yang didapat dari websitenya shop-script ini, setup awal bisa dilakukan tidak sampai 15 menit saja. Shop-script ini juga sudah mendukung payment menggunakan paypal. Beberapa fi...

Internet Indonesia Paling Lambat Se-Asia, Ini Kata Menkominfo

Didik Purwanto | Reza Wahyudi | Sabtu, 5 Mei 2012 | 08:02 WIB Ilustrasi JAKARTA, KOMPAS.com — Menteri Komunikasi dan Informatika Tifatul Sembiring angkat bicara soal hasil penelitian lembaga riset dari Amerika Serikat, Akamai, yang menyebut kecepatan internet di Indonesia dinilai paling lambat se-Asia. Menurutnya, penetapan kecepatan internet itu urusan operator, bukan pemerintah. "Saya terima tuduhan (hasil riset) itu. Tapi seharusnya itu urusan operator, kan mereka yang berjualan. Penetapan kecepatan internet itu bukan urusan pemerintah," kata Tifatul selepas melantik pengurus baru Badan Regulasi Telekomunikasi Indonesia (BRTI) di Gedung Kemenkominfo, Jakarta, Rabu (2/5/2012). Menurut Tifatul, meski bukan urusan pemerintah, Kemenkominfo tidak memiliki hak untuk memaksakan operator dalam menaikkan kecepatan internet di Tanah Air. Dengan demikian, hanya operator yang bisa menentukan kecepatan internet sekaligus tarifnya. Namun, Kemenkominfo berjanji untuk selal...

Vb.Net 2008 Form Penjualan [REVISI]

Assalamu'alaikum Warahmatullahi Wabarakatuh Selamat pagi semua......! Bingung mau nulis apaan! hemb................setelah utak atik ternyata dapet ide juga buat nulis artikel tentang FOM PENJUALAN dengan VB.Net 2008, kali ini saya mau mencoba bikin form penjualan dengan database MySQL, sebelumnya teman-teman harus sudah membuat sebuah database di local seperti contoh berikut,  Saya membuatnya di XAMPP 1.7.3, itu optional saja sih,,,,teman-teman bisa membuatnya dengan aplikasi apa saja asalkan mendukung formatnya. Tabel diatas saya buat dengan database dbPenjualan, selain itu untuk tabel pendukung saya tambahkan satu tabel lagi sebagai berikut Tabel ini saya gunakan untuk menyimpan data setelah seluruh proses transaksi selesai. Jika semua sudah siap,,,,,,,,,kita tinggal setting sebuah form seperti berikut Saya tidak akan basa basi kelamaan, mending temen-temen langsung bedaan tampilan sebelum di Run sama yang sudah di Run, tampilan form jualnya pasti ada yang ber...