DataGridView Eintraege speichern

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    DataGridView Eintraege speichern

    Hallo!
    Ich habe derzeit ein Problem mit der Speicherung von Daten in einer DataGridView.
    Ich gebe in der ersten Form den Eintrag manuell per TextBox ein und die Informationen erscheinen danach in der zweiten form in einem DataGridView.

    Folgendes Problem:

    Die Eintraege gehen, nach dem schliessen von der zweiten Form, verloren. Wie kann ich die Eintraege speichern?


    Mfg

    TehBasic :)
    Zunächst einmal solltest Du die Daten nicht in einem DataGridView sondern in einer DataTable speichern.
    Diese kannst Du als DataSource per DataBinding an das DataGridView binden.
    Du arbeitest dann nur noch auf der DataTable.
    Diese kannst Du dann per DataTable.WriteXML(DEIN_PFAD) und DataTable.ReadXML(DEIN_PFAD) ganz easy handeln.
    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!

    TehBasic schrieb:



    Die Eintraege gehen, nach dem schliessen von der zweiten Form, verloren. Wie kann ich die Eintraege speichern?


    Also weil ich mich als Anfänger gerade mit ähnlichen Themen herumgeschlagen habe.

    Erst ein Dataset einrichten. Dort die Spalten für deine Daten bestimmen.

    Dann eine BindingSource auf die Form ziehen. Als Datenquelle gibst Du dein Dataset an und als DataMember die Tabelle im Dataset.

    Jetzt ziehst Du ein DataGridView auf deine Form und bei der Datenquelle gibst Du die Bindingsource an.

    Beim Schließen der Form gibst du an, wohin Du die Daten gespeichert haben willst.

    Ich mache es momentan mit XML-Dateien und nehme deswegen:

    VB.NET-Quellcode

    1. DataSet1.writexml(Pfad & "Datei.xml")
    .

    Das ist die Reihenfolge, die bei mir zuverlässig funktioniert. Mein spontaner Erstversuch von DGV-Spalten einrichten, dann die Bindingsource dranzuhängen, daran das Dataset haben nur Ärger produziert.

    Grüße
    Stephan

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „VisualDAU“ ()

    VisualDAU schrieb:

    Dann eine BindingSource auf die Form ziehen. Als Datenquelle gibst Du dein Dataset an und als DataMember die Tabelle im Dataset.

    wie auch in "DatasetOnly" auf Movie-Tuts erwähnt: Noch bisserl einfacher ists, die typDataTAbles aus dem Datenfenster aufs Form zu ziehen.
    Und dann BindingNavigator runnerwerfen, und dgv nacharbeiten.