DataGridView speichern

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Schnittcher.

    DataGridView speichern

    Ich versuche gerade eine DataGridView abspeichern, und hab dazu schon etwas gefunden, aber leider Funktioniert das nicht, weil er mir diese Fehler anzeigt:
    Fehler 1 Imports-Anweisungen müssen vor Deklarationen stehen. C:\Users\Martin\Documents\Schule\Softwarentwicklung\Programme\vb\Stundenprogramm\Stundenprogramm\Form1.vb 3 5 Stundenprogramm
    Fehler 2 Der Typ "OleDbDataAdapter" ist nicht definiert. C:\Users\Martin\Documents\Schule\Softwarentwicklung\Programme\vb\Stundenprogramm\Stundenprogramm\Form1.vb 23 19 Stundenprogramm
    Fehler 3 Der Typ "OleDbConnection" ist nicht definiert. C:\Users\Martin\Documents\Schule\Softwarentwicklung\Programme\vb\Stundenprogramm\Stundenprogramm\Form1.vb 29 24 Stundenprogramm
    Fehler 4 Der Typ "OleDbDataAdapter" ist nicht definiert. C:\Users\Martin\Documents\Schule\Softwarentwicklung\Programme\vb\Stundenprogramm\Stundenprogramm\Form1.vb 33 18 Stundenprogramm
    Fehler 5 Der Typ "OleDbCommandBuilder" ist nicht definiert. C:\Users\Martin\Documents\Schule\Softwarentwicklung\Programme\vb\Stundenprogramm\Stundenprogramm\Form1.vb 37 23 Stundenprogramm

    Hier ist der Quelltext:

    VB.NET-Quellcode

    1. Imports System.Data.OleDb
    2. Private dt As New DataTable
    3. Private da As OleDbDataAdapter
    4. Private ds As New DataSet
    5. Private bs As New BindingSource
    6. Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    7. Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\db1.mdb;"
    8. Dim Con As New OleDbConnection(ConStr)
    9. ds.Tables.Add(dt)
    10. da = New OleDbDataAdapter("SELECT * FROM Tabelle1", Con)
    11. da.Fill(dt)
    12. Dim cb As New OleDbCommandBuilder(da)
    13. bs.DataSource = dt
    14. Me.DataGridView1.DataSource = bs
    15. End Sub
    16. Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    17. If ds.HasChanges Then
    18. If MsgBox("Änderungen speichern?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo) Then
    19. bs.EndEdit()
    20. da.Update(ds.Tables(0))
    21. End If
    22. End If
    23. End Sub


    Oder könnte man das mit INI auch abspeichern?
    Danke schonmal für alle Antworten ;)
    Imports müssen ganz am Anfang einer Datei stehen...

    Als Beispiel:

    VB.NET-Quellcode

    1. Imports System.Data.OleDb
    2. Public Class Form1
    3. Private dt As New DataTable
    4. Private da As OleDbDataAdapter
    5. Private ds As New DataSet
    6. Private bs As New BindingSource
    7. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    8. Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\db1.mdb;"
    9. Dim Con As New OleDbConnection(ConStr)
    10. ds.Tables.Add(dt)
    11. da = New OleDbDataAdapter("SELECT * FROM Tabelle1", Con)
    12. da.Fill(dt)
    13. Dim cb As New OleDbCommandBuilder(da)
    14. bs.DataSource = dt
    15. Me.DataGridView1.DataSource = bs
    16. End Sub
    17. Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
    18. If ds.HasChanges Then
    19. If MsgBox("Änderungen speichern?", MsgBoxStyle.Question Or MsgBoxStyle.YesNo) Then
    20. bs.EndEdit()
    21. da.Update(ds.Tables(0))
    22. End If
    23. End If
    24. End Sub
    25. End Class