Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Ihr Browser wird nicht unterstützt.

Sie müssen Ihren Browser aktualisieren, um die Website zu verwenden.

Aktualisieren Sie auf die neueste Version von Internet Explorer.

Vorgehensweise zum Binden eines DataGrid-Steuerelements an einer ArrayList mit Objekten oder Strukturen mithilfe von Visual Basic 2005 oder Visual Basic .NET

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 316302
Eine Microsoft Visual c# .NET Version dieses Artikels finden Sie unter 316303.
Zusammenfassung
Dieser schrittweise aufgebaute Artikel beschreibt das Binden einer ArrayList mit Objekten an ein DataGrid -Steuerelement. Das Beispiel besteht für ein Microsoft Windows Form mit einem DataGrid -Steuerelement zum Anzeigen von Objekteigenschaftenwerte und vier Befehlsschaltflächen zum Durchsuchen der Zeilen eines DataGrid -Steuerelements.

Voraussetzungen

Die folgende Liste führt die empfohlene Hardware, Software, Netzwerkinfrastruktur und Service Packs, die erforderlich sind:
  • Microsoft Visual Basic 2005 oder Microsoft Visual Basic .NET
In diesem Artikel wird vorausgesetzt, dass Sie über Erfahrungen auf den folgenden Gebieten verfügen:
  • Visual Basic-Programmierkonzepte

Entwerfen der Klasse

Eine Klasse, ein Steuerelement gebunden werden, muss Eigenschaftenaccessoren haben. Jede Eigenschaft, die gebunden werden muss Methoden Eigenschaftensatz und Property Get haben. Die Beispiel-Klasse, die in diesem Artikel verwendet wird, hat drei Member (nur eine wird hier dargestellt). Ein parametrisierter Konstruktor ist ebenfalls enthalten, ist jedoch nicht erforderlich.
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				

Hinzufügen von Klasseninstanzen zu einer ArrayList

Erstellen von Instanzen und Sie die ArrayList hinzufügen, gehen Sie folgendermaßen vor:
  1. Deklarieren Sie eine ArrayList .
  2. Erstellen Sie Instanzen der Klasse, und fügen Sie die Instanzen zur ArrayList hinzu.
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))				

Binden Sie die ArrayList an das DataGrid-Steuerelement

Nachdem die ArrayList aufgefüllt wurde, legen Sie die DataSource -Eigenschaft des DataGrid -Steuerelements zur ArrayList . Die Spalten im DataGrid -Steuerelement werden aufgefüllt Grundlage der Eigenschaften für die im Bereich Eigenschaftenaccessoren vorhanden sind.
DataGrid1.DataSource = al				

Bereitstellen einer Möglichkeit zum Durchsuchen der ArrayList

Sie können CurrencyManager zum Durchsuchen der ArrayList verwenden. Verbinden Sie dazu CurrencyManager mit dem BindingContext des Steuerelements (in diesem Fall die ArrayList ).
Private cManager As CurrencyManagercManager = CType(DataGrid1.BindingContext(al), CurrencyManager)				
die Klasse CurrencyManager hat eine Eigenschaft Position , die Sie zum Durchlaufen der Member der ArrayList ändern können. Durch Hinzufügen oder Subtraktion vom aktuellen Wert von Position , können Sie die Zeilen eines DataGrid -Steuerelements durchsuchen.
'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				

Vorgehensweise: Beispiel

  1. Erstellen Sie in Visual Basic2005 oder in Visual Basic .NET ein neues Windows-Anwendungsprojekt. Form1 wird standardmäßig erstellt.
  2. Klicken Sie im Menü Projekt auf Klasse hinzufügen , um eine Klasse zum Projekt hinzufügen.
  3. Ersetzen Sie mit den folgenden den Code in 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 PropertyEnd Class					
  4. Schließen Sie das Class1.vb Code-Fenster, und wechseln Sie zum Formulardesigner.
  5. Fügen Sie ein DataGrid -Steuerelement zu Form1 hinzu. Die Größe des DataGrid -Steuerelements um vier Spalten und drei Zeilen aufzunehmen.
  6. Fügen Sie vier Button -Steuerelemente zu Form1 hinzu, und ordnen Sie die Schaltflächen horizontal an.
  7. Ändern Sie die Text -Eigenschaft von Button1 auf Weiter .
  8. Ändern Sie die Text -Eigenschaft von Button2 auf zurück .
  9. Ändern Sie die Text -Eigenschaft von Button3 auf Erster .
  10. Ändern Sie die Text -Eigenschaft von Button4 auf Letzte .
  11. Fügen Sie der Klasse Form1 den folgenden Code:
    Private cManager As CurrencyManagerPrivate al as New ArrayList()					
  12. Fügen Sie den folgenden Code in die Form1_Load -Ereignis:
    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. Fügen Sie nach der Form_Load -Prozedur folgenden Code:
        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. Erstellen Sie das Projekt, und führen Sie es aus.
  15. Klicken Sie auf die Befehlsschaltflächen zum Wechseln zwischen den Zeilen eines DataGrid -Steuerelements. Bei Bedarf können Sie die Werte der Objekte bearbeiten.

Mit der Struktur statt einer Klasse

Die Regeln für die Bindung einer Struktur sind identisch mit den Regeln für ein Objekt binden. Eigenschaftenaccessoren (d. h. Member) sind erforderlich. Eine Struktur, die zu diesem Zweck erstellte ähnelt eine Klasse.

Gehen Sie folgendermaßen vor um an einem ArrayList mit Strukturen binden,
  1. Ändern der Definition des Klassenmoduls Class1.vb im Beispiel aus
    Public Class guitar'...End Class					
    , die der folgenden:
    Public Structure guitar'...End Structure					
  2. Erstellen und führen Sie das Beispielprogramm erneut aus, und stellen Sie sicher, dass Sie mit einer ArrayList mit Strukturen funktioniert.
Informationsquellen
Weitere Informationen finden Sie unter dem Thema "Consumers of Data on Windows Forms" in der Visual Studio .NET-Onlinehilfe.

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 316302 – Letzte Überarbeitung: 12/06/2006 23:26:02 – Revision: 3.3

  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB316302 KbMtde
Feedback
pendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> >>ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");