Bagaimana untuk mengikat kontrol DataGrid untuk ArrayList objek atau struktur dengan menggunakan Visual Basic 2005 atau Visual Basic.NET

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 316302 - Melihat produk di mana artikel ini berlaku.
Untuk Microsoft Visual C#.NET versi artikel ini, lihat 316303.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Artikel ini selangkah demi selangkah menjelaskan bagaimana untuk mengikat ArrayList objek untuk DataGrid kontrol. Contoh terdiri dari Microsoft Windows bentuk dengan DataGrid kontrol untuk menampilkan nilai properti objek, dan empat tombol browse baris dari DataGrid kontrol.

Persyaratan

Daftar berikut menguraikan fitur perangkat keras, perangkat lunak, jaringan infrastruktur, dan paket layanan yang diperlukan:
  • Microsoft Visual Basic 2005 atau Microsoft Visual Basic.NET
Artikel ini mengasumsikan bahwa Anda sudah familiar dengan topik-topik berikut:
  • Konsep-konsep pemrograman Visual Basic

Desain kelas

Kelas yang terikat untuk kontrol harus memiliki properti accesor. Setiap properti yang terikat harus Properti Set dan Mendapatkan properti metode. Contoh kelas yang digunakan dalam artikel ini memiliki tiga anggota (satu-satunya yang ditampilkan di sini.) Konstruktor parameterized juga telah disediakan, tapi tidak persyaratan.
Public Class guitar
    Private m_make As String
    Private m_model As String
    Private m_year As Short

    Public Sub New(ByVal make, ByRef model, ByVal year)
        m_make = make
        m_model = model
        m_year = year
    End Sub
    Public Property make() As String
        Get
            Return m_make
        End Get
        Set(ByVal Value As String)
            m_make = Value
        End Set
    End Property
    
End Class
				

Menambahkan kelas contoh ArrayList

Untuk membuat contoh dan menambahkannya ke ArrayList, ikuti langkah berikut:
  1. Menyatakan ArrayList.
  2. Membuat contoh kelas, dan kemudian menambahkan contoh-contoh untuk ArrayList.
Private al as New Arraylist()

al.Add(New guitar("Gibson", "Les Paul", 1958))
al.Add(New guitar("Fender", "Jazz Bass", 1964))
al.Add(New guitar("Guild", "Bluesbird", 1971))
				

Mengikat ArrayList DataGrid

Setelah ArrayList telah ditempati, mengatur DataSource properti DataGrid kontrol untuk ArrayList. Kolom dalam DataGrid kontrol akan diisi berdasarkan sifat-sifat yang ada dalam lingkup properti accesor.
DataGrid1.DataSource = al
				

Menyediakan sarana untuk menelusuri ArrayList

Anda dapat menggunakan CurrencyManager untuk menelusuri ArrayList. Untuk melakukannya, mengaitkan CurrencyManager dengan BindingContext kontrol (dalam kasus ini, ArrayList).
Private cManager As CurrencyManager

cManager = CType(DataGrid1.BindingContext(al), CurrencyManager)
				
The CurrencyManager kelas memiliki Posisi properti yang Anda dapat memanipulasi untuk atas anggota ArrayList. Oleh menambah, atau mengurangi dari, pada saat ini nilai Posisi, Anda dapat menelusuri baris dari DataGrid kontrol.
'Move forward one element.
cManager.Position += 1
'Move back one element.
cManager.Position -= 1
'Move to the beginning.
cManager.Position = 0
'Move to the end.
cManager.Position = al.Count - 1
				

Contoh langkah demi langkah

  1. Dalam Visual Basic2005 atau Visual Basic.NET, membuat proyek baru aplikasi Windows. Form1 dibuat secara default.
  2. Pada Project menu, klik Menambahkan kelas untuk menambahkan class untuk proyek.
  3. Ganti kode dalam Class1.vb dengan berikut:
    Public Class guitar
        Private m_make As String
        Private m_model As String
        Private m_year As Short
    
        Public Sub New(ByVal make, ByRef model, ByVal year)
            m_make = make
            m_model = model
            m_year = year
        End Sub
        Public Property make() As String
            Get
                Return m_make
            End Get
            Set(ByVal Value As String)
                m_make = Value
            End Set
        End Property
        Public Property model() As String
            Get
                Return m_model
            End Get
            Set(ByVal Value As String)
                m_model = Value
            End Set
        End Property
        Public Property year() As Short
            Get
                Return m_year
            End Get
            Set(ByVal Value As Short)
                m_year = Value
            End Set
        End Property
    End Class
    					
  4. Tutup jendela kode Class1.vb, dan kemudian beralih ke Form Designer.
  5. Tambahkan DataGrid mengontrol Form1. Ukuran DataGrid kontrol untuk mengakomodasi empat kolom dan tiga baris.
  6. Tambahkan empat Tombol kontrol untuk Form1, dan kemudian mengatur tombol horizontal.
  7. Perubahan Teks properti Button1 untuk Berikutnya.
  8. Perubahan Teks properti Button2 untuk Sebelumnya.
  9. Perubahan Teks properti Button3 untuk Pertama.
  10. Perubahan Teks properti Button4 untuk Terakhir.
  11. Tambahkan kode berikut untuk Form1 kelas:
    Private cManager As CurrencyManager
    Private al as New ArrayList()
    					
  12. Paste kode berikut di Form1_Load acara:
    al.Add(New guitar("Gibson", "Les Paul", 1958))
    al.Add(New guitar("Fender", "Jazz Bass", 1964))
    al.Add(New guitar("Guild", "Bluesbird", 1971))
    				
    cManager = CType(DataGrid1.BindingContext(al), CurrencyManager)
    	
    DataGrid1.DataSource = al
    					
  13. Paste kode berikut setelah Form_Load prosedur:
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            cManager.Position += 1
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            cManager.Position -= 1
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            cManager.Position = 0
        End Sub
    
        Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
            cManager.Position = al.Count - 1
        End Sub
    					
  14. Membangun dan menjalankan proyek.
  15. Klik tombol perintah untuk bergerak di antara baris DataGrid kontrol. Perhatikan bahwa Anda dapat mengedit nilai-nilai objek jika diinginkan.

Menggunakan struktur bukan kelas

Aturan-aturan untuk mengikat struktur yang sama dengan aturan untuk mengikat suatu objek. Accesor properti (yaitu anggota) diperlukan. Struktur yang dibuat untuk tujuan ini menyerupai kelas.

Untuk mengikat untuk ArrayList struktur, ikuti langkah berikut:
  1. Mengubah definisi modul kelas Class1.vb dalam contoh dari
    Public Class guitar
    '...
    End Class
    					
    dengan berikut:
    Public Structure guitar
    '...
    End Structure
    					
  2. Membangun dan menjalankan program contoh lagi, dan memverifikasi bahwa itu berfungsi dengan ArrayList struktur.

REFERENSI

Untuk selengkapnya, lihat topik "Konsumen dari Data pada Windows Forms" dalam Visual Studio.NET bantuan Online.

Properti

ID Artikel: 316302 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Kata kunci: 
kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB316302 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:316302

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com