Πώς να συνδέσετε ένα στοιχείο ελέγχου DataGrid με ένα ArrayList αντικειμένων ή δομές χρησιμοποιώντας 2005 Visual Basic ή Visual Basic.NET

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 316302 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Για μια οπτική Microsoft C#.NET έκδοση αυτού του άρθρου, ανατρέξτε στο θέμα 316303.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Αυτό το άρθρο βήμα προς βήμα περιγράφει τον τρόπο για να συνδέσετε ένα ArrayList αντικείμενα σε ένα Το DataGrid στοιχείο ελέγχου. Το παράδειγμα που αποτελείται από μια φόρμα Microsoft Windows με ένα Το DataGrid στοιχείο ελέγχου για να εμφανίσετε τιμές ιδιοτήτων του αντικειμένου και τέσσερα κουμπιά εντολών για να αναζητήσετε τις γραμμές του Το DataGrid στοιχείο ελέγχου.

Απαιτήσεις

Η ακόλουθη λίστα περιγράφει το υλικού που συνιστώνται, λογισμικό, υποδομή δικτύου και τα service pack που απαιτούνται:
  • 2005 Microsoft Visual Basic ή Microsoft Visual Basic.NET
Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τα ακόλουθα θέματα:
  • Έννοιες προγραμματισμού Visual Basic

Σχεδίαση της κλάσης

Μια κλάση που έχει συνδεθεί ένα στοιχείο ελέγχου πρέπει να έχει στοιχεία πρόσβασης της ιδιότητας. Πρέπει να έχουν οποιαδήποτε ιδιότητα που πρόκειται να συνδεθεί Σύνολο ιδιοτήτων και Λήψη ιδιοτήτων μέθοδοι. Η κλάση δείγμα που χρησιμοποιείται σε αυτό το άρθρο έχει τρία μέλη (μόνο μία εμφανίζεται εδώ.) Μια κατασκευή με παραμέτρους επίσης παρέχονται, αλλά δεν απαιτείται.
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
				

Προσθέσετε παρουσίες της κλάσης σε μια ArrayList

Για να δημιουργήσετε εμφανίσεις και να προσθέσετε το ArrayList, ακολουθήστε τα εξής βήματα:
  1. Δηλώνετε μια ArrayList.
  2. Δημιουργία παρουσιών της κλάσης και κατόπιν να προσθέσετε παρουσίες για το 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))
				

Η σύνδεση του ArrayList DataGrid

Μετά την ArrayList έχει συμπληρωθεί, ορίστε το Αρχείο προέλευσης δεδομένων ιδιότητα του Το DataGrid Έλεγχος για το ArrayList. Στις στήλες του Το DataGrid στοιχείο ελέγχου συμπληρώνονται με βάση τις ιδιότητες για το οποίο υπάρχουν στοιχεία πρόσβασης της ιδιότητας του πεδίου.
DataGrid1.DataSource = al
				

Παρέχει ένα μέσο για την αναζήτηση του ArrayList

Μπορείτε να χρησιμοποιήσετε CurrencyManager Για να περιηγηθείτε το ArrayList. Για να γίνει αυτό, συσχέτιση CurrencyManager με το Κωδικοποίησης μηνύματος του στοιχείου ελέγχου (στην περίπτωση αυτή, το ArrayList).
Private cManager As CurrencyManager

cManager = CType(DataGrid1.BindingContext(al), CurrencyManager)
				
Το CurrencyManager η κλάση έχει ένα Θέση ιδιότητα που μπορείτε να χειριστείτε για τη συνεχή επανάληψη των μελών της ArrayList. Προσθέτοντας ή αφαιρώντας από την τρέχουσα τιμή της Θέση, μπορείτε να αναζητήσετε τις γραμμές του Το DataGrid στοιχείο ελέγχου.
'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
				

Παράδειγμα βήμα προς βήμα

  1. Στη Visual Basic ή Visual Basic2005.NET, δημιουργήστε ένα νέο έργο εφαρμογών των Windows. Δημιουργείται η φόρμα Form1 από προεπιλογή.
  2. Από το Έργο μενού, κάντε κλικ στο κουμπί Προσθήκη κλάσης Για να προσθέσετε μια κλάση του έργου.
  3. Αντικατάσταση κώδικα Class1.vb με το εξής:
    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. Κλείστε το παράθυρο κώδικα Class1.vb και στη συνέχεια μεταβείτε στη σχεδίαση της φόρμας.
  5. Προσθέστε ένα Το DataGrid Έλεγχος Form1. Μέγεθος του Το DataGrid στοιχείο ελέγχου για να χωρέσει τέσσερις στήλες και τρεις γραμμές.
  6. Προσθήκη τέσσερις Κουμπί ελέγχει Form1 και στη συνέχεια τακτοποιήστε τα κουμπιά οριζόντια.
  7. Αλλαγή του Κείμενο η ιδιότητα Button1 για να Επόμενη.
  8. Αλλαγή του Κείμενο η ιδιότητα Button2 για να Προηγούμενη.
  9. Αλλαγή του Κείμενο η ιδιότητα Button3 για να Πρώτη.
  10. Αλλαγή του Κείμενο η ιδιότητα Button4 για να Τελευταία.
  11. Προσθέστε τον ακόλουθο κώδικα για το Φόρμα1 (Form1) Κλάση:
    Private cManager As CurrencyManager
    Private al as New ArrayList()
    					
  12. Επικολλήστε τον ακόλουθο κώδικα στο του Form1_Load συμβάν:
    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. Επικολλήστε τον ακόλουθο κώδικα μετά το Form_Load διαδικασία:
        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. Δημιουργία και εκτέλεση του έργου.
  15. Κάντε κλικ σε κουμπιά εντολών για να μετακινηθείτε μεταξύ των γραμμών του Το DataGrid στοιχείο ελέγχου. Σημειώστε ότι μπορείτε να επεξεργαστείτε τις τιμές των αντικειμένων, εάν το επιθυμείτε.

Χρησιμοποιώντας μια δομή αντί για μια κλάση

Οι κανόνες για τη σύνδεση μια δομή είναι ίδια με τους κανόνες για ένα αντικείμενο σύνδεσης. Απαιτούνται στοιχεία πρόσβασης της ιδιότητας (δηλαδή μέλος). Μια δομή που έχει δημιουργηθεί για το σκοπό αυτό μοιάζει με μια κλάση.

Για να συνδέσετε σε ένα ArrayList των δομών, ακολουθήστε τα εξής βήματα:
  1. Αλλάξτε τον ορισμό της λειτουργικής μονάδας κλάσης Class1.vb στο παράδειγμα από
    Public Class guitar
    '...
    End Class
    					
    με το ακόλουθο:
    Public Structure guitar
    '...
    End Structure
    					
  2. Δημιουργήστε και εκτελέστε ξανά το πρόγραμμα παράδειγμα και βεβαιωθείτε ότι λειτουργεί με ένα ArrayList δομές.

Αναφορές

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα "Καταναλωτές των δεδομένων στον Windows φόρμες" στο Visual Studio.NET ηλεκτρονική Βοήθεια.

Ιδιότητες

Αναγν. άρθρου: 316302 - Τελευταία αναθεώρηση: Κυριακή, 29 Μαΐου 2011 - Αναθεώρηση: 4.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
Λέξεις-κλειδιά: 
kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB316302 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:316302

Αποστολή σχολίων

 

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