1Eigene Klasse in Einstellungen speichern?

  • VB.NET

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

    1Eigene Klasse in Einstellungen speichern?

    Hallo,

    ich bräuchte Hilfe bei einem Übungsprogramm das ich anhand dieses Tutorials gemacht habe
    http://www.vb-paradise.de/allgemeines/tipps-tricks-und-tutorials/allgemein/51591-how-to-eigene-klassen-erstellen-verwalten-und-verwenden/

    Das Programm habe ich verstanden und funktioniert auch. Jedoch wollte ich meine Klasse (Public class Paket) dann auch speichern bzw anhand der Klasse verschiedene Pakete erstellen, mit jeweils verschiedenem Inhalt was auch funktioniert. Diese sollten dann allerdings nach beeneden und neu starten des Programms immer noch abrufbar sein. Hier mal was ich bisher habe:

    Meine Klasse "Paket":
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class Paket
    2. Private paket_name, paket_licht, paket_lesematerial, paket_jagtwerkzeug As String
    3. Public Property name As String
    4. Get
    5. Return paket_name
    6. End Get
    7. Set(value_name As String)
    8. paket_name = value_name
    9. End Set
    10. End Property
    11. Public Property Licht As String
    12. Get
    13. Return paket_licht
    14. End Get
    15. Set(value_licht As String)
    16. paket_licht = value_licht
    17. End Set
    18. End Property
    19. Public Property Lesematerial As String
    20. Get
    21. Return paket_lesematerial
    22. End Get
    23. Set(value_lesematerial As String)
    24. paket_lesematerial = value_lesematerial
    25. End Set
    26. End Property
    27. Public Property Jagtwerkzeug As String
    28. Get
    29. Return paket_jagtwerkzeug
    30. End Get
    31. Set(value_jagtwerkzeug As String)
    32. paket_jagtwerkzeug = value_jagtwerkzeug
    33. End Set
    34. End Property
    35. Public Sub New(ByVal p_name As String, ByVal p_licht As String, ByVal p_lesematerial As String, ByVal p_jagtwerkzeug As String)
    36. paket_name = p_name
    37. paket_licht = p_licht
    38. paket_lesematerial = p_lesematerial
    39. paket_jagtwerkzeug = p_jagtwerkzeug
    40. End Sub
    41. End Class


    Meine Form "WindowsForm":
    Spoiler anzeigen

    VB.NET-Quellcode

    1. Public Class WindowsForm
    2. Dim PaketAuflistung As New List(Of Paket)
    3. Private Sub btnSpeichern_Click(sender As System.Object, e As System.EventArgs) Handles btnSpeichern.Click
    4. Dim Paket2Add As New Paket(tbName.Text, CStr(lbLicht.SelectedItem), CStr(lbLesematerial.SelectedItem), CStr(lbJagtwerkzeug.SelectedItem))
    5. PaketAuflistung.Add(Paket2Add)
    6. lvListe.Items.Clear()
    7. For Each xProperty As Paket In PaketAuflistung
    8. With lvListe
    9. .Items.Add(xProperty.name.ToString)
    10. .Items.Item(.Items.Count - 1).SubItems.Add(xProperty.Licht)
    11. .Items.Item(.Items.Count - 1).SubItems.Add(xProperty.Lesematerial)
    12. .Items.Item(.Items.Count - 1).SubItems.Add(xProperty.Jagtwerkzeug)
    13. End With
    14. Next
    15. End Sub
    16. End Class


    Hier ist noch ein Bild damit man leichter versteht was ich meine:
    SkyDrive Link

    Bis jetzt habe ich im Bereich Daten speichern alles entweder über die Projekeigenschafften - Settings gemacht oder mit einem DataSet gearbeitet und dieses als XML gespeichert.
    Sollte ich das in ein DataSet speichern? Mit einem Public Sub Save(ByVal p_DataSetPfad As String) in der Klasse dann?
    :?: Oder Kann ich auch irgendwie zur Laufzeit Settings erstellen die den Typ der Klasse haben? Oder lieg ich einfach nur komplett falsch?

    Ich hab auch schon versucht anhand dieses Tutorials zuerst eine Klassenbibliothek mit meiner Klasse zu erstellen und danach einen Verweis auf diese. Was auch funktioniert hat. Jedoch werden dort leider nur Funktionen behandelt die Werte zurückgeben und es werden keine Werte gespeichert. Als ich das miteinander verknüpfen wollte ging es dann auch nicht so wie ich es mir erhofft hatte, das ich mit einem Verweis auf die Klasse in den Projekteigenschaften - Settings die klasse als Speichertyp auswählen kann....
    http://www.vb-paradise.de/allgemeines/tipps-tricks-und-tutorials/allgemein/61086-kleines-klassenbibliothek-dll-tutorial/

    :?: Die List(of Paket) bekomm ich auch nicht über die Settings der Projekteigenschaften gespeichert.....:S
    wäre Super wenn mir jemand bitte erklären könnte wie ich da am besten rangehen sollte oder was ich falsch ma che/denke?!?

    Danke schonmal im Vorraus
    Gruß Mike

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „MikeSince86“ ()

    Ich verwende nie die Einstellungen sondern mach das alles über ne serialisierung. Benutz einfach den Xml- oder BinarySerializer und serialisier das Zeug in ne Datei. Die kannste wieder laden und du hast wieder alles.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    Der ListView-Holzweg

    Du steuerst schnurgrade auf eine Datenverarbeitung zu.
    Selber Klassen erstellen ist ja ganz schön, aber für Datenverarbeitung gibts Basisklassen, und Designer, mit denen erstellst du wesntlich leichter wesentlich leistungsfähigere Klassen.

    Mit allem Pipapo: laden, ändern, speichern, zufügen, löschen, sortieren, filtern, sogar an Gültigkeitsüberprüfung ist gedacht.
    Also statt deiner selbstgebastelten Pakete, erstell dir ein typDataset mit einer Tabelle "Paket", und rüste Paket mit den notwendigen Spalten aus.

    gugge Most Primitive