Combobox + Access beim schließen Daten nicht vergessen

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von tuvok.

    Combobox + Access beim schließen Daten nicht vergessen

    Hallo Liebes Forum,

    Ich habe folgendes vor...
    ich habe eine Datenbank z.B. mit einer Spalte wo unterschiedliche Namen bzw. Texte drin stehn..

    jetzt habe ich 3 Comboboxen, wo ich mir aus der DB die Namen bzw. Texte einlesen lasse.. damit ich diese zur auswahl habe..
    Wenn ich in den 3 Comboboxen jeweils einen anderen Namen ausgewählt habe und das Form schließe möchte ich, dass wenn es
    wieder geöffnet wird, dass dann die ausgewählten sachen wieder in den Comboboxen stehen..

    meine Idee wäre gewesen mehrere Spalten anlegen für jede Combobox eine .. und wenn das Form startet werden die Daten wieder eingelesen.. das prob ist nur dann kann man die Auswahl von der ersten Spalte
    wo alle anderen namen drin stehen nicht mehr auslesen oder?
    Merk Dir den Zustand, den Du wieder herstellen möchtest, in My.Setings.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    VB.NET-Quellcode

    1. My.Settings.Reload()
    2. ' ...
    3. My.Settings.VERWENDE_SIE
    4. My.Settings.Save()
    5. Me.Close()
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    ja soweit bin ich schon .. aber wo speichert er die informationen hin? ..
    weil wenn ich das Tool dann auf mehreren rechnern benutze darf ja nicht alles unterschiedlich sein .. es muss ja immer das gleiche zu sehen sein .. bei jedem öffnen des Forms
    Eine XML-Datei in einem kryptischen Pfad in Deinen System-Profil-Daten.
    Wenn die Daten konstant bleiben sollen, verwende Konstante.
    My.Settings sind nur jungfräulich (ohne XML-Datei) überall gleich, ansonsten so, wie sie halt gespeichert werden.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Hallo,
    ok habe gerade festgestellt, dass doch nicht alles geklappt hat..


    VB.NET-Quellcode

    1. Imports System.Data.OleDb 'Import der Datenbankfunktion
    2. Imports System.IO
    3. Public Class Form1
    4. #Region "Variablen"
    5. Dim con As New OleDbConnection 'Variable für DB abfragen
    6. Dim cmd As New OleDbCommand 'Variable für DB abfragen
    7. Dim reader As OleDbDataReader 'Variable für DB abfragen
    8. #End Region
    9. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    10. 'Ort der DB
    11. con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=.\Daten.accdb"
    12. cmd.Connection = con
    13. 'Sub combobox_fuellen aufrufen
    14. combobox_fuellen()
    15. 'Der letzt Eintrag der ausgewählt wurde wird in der Combobox angezeigt
    16. ComboBox1.Text = My.Settings.text
    17. ComboBox2.Text = My.Settings.text
    18. End Sub
    19. #Region "Combobox mit Mitarbeitern füllen"
    20. Sub combobox_fuellen()
    21. 'SQL-String zum auslesen der DB
    22. cmd.CommandText = "SELECT * from Daten"
    23. con.Open() 'Verbindung zur db öffnen
    24. reader = cmd.ExecuteReader()
    25. Do While reader.Read()
    26. ComboBox1.Items.Add(reader("Mitarbeiter"))
    27. ComboBox2.Items.Add(reader("Mitarbeiter"))
    28. Loop
    29. reader.Close()
    30. con.Close()
    31. End Sub
    32. #End Region
    33. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    34. 'hier werden die Informationen die in der Combobox ausgewählt wurden gespeichert
    35. My.Settings.text = ComboBox1.Text
    36. My.Settings.Save()
    37. ' Combobox2
    38. My.Settings.text = ComboBox2.Text
    39. My.Settings.Save()
    40. End Sub
    41. End Class


    der Text der gemerkt werden soll wird bei mir wohl überschrieben .. beim drücken des speicher Buttons.. bei

    VB.NET-Quellcode

    1. My.Settings.text

    jetzt ist die Frage, wie kann ich mehrere Auswahlen speichern?
    Verwende oder ein String-Array

    VB.NET-Quellcode

    1. My.Settings.text1
    2. My.Settings.text2
    3. My.Settings.text3
    4. My.Settings.text4
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Du musst die Settings einzeln Deinem Programm hinzufügen:
    Prpjekt -> Eigenschaften -> Einstellungen
    Da kannst Du reinschreiben, was Du brauchst.
    Und:
    Die heißen nur My.Settings.Name.

    VB.NET-Quellcode

    1. My.Settings.Name1 = "bla"
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!