Hallo zusammen!
Ich bin neu hier im Forum und arbeite an einem VB.Net Projekt. Ich bin von VB6 umgestiegen und mache gerade die ersten Erfahrungen mit Klassen.
Nun zu meinem Problem: Ich möchte aus einer XML-Datei die Pfadangaben für Dateien herauslesen. Das sind die Pfade für einen Eingangs- und einen Ausgangsordner. Also gibt die Function zwei Werte zurück. Ich hatte dazu ein wenig im Netz gesucht und den Hinweis gefunden, dass man in solch einem Fall eine Klasse als Rückgabetyp verwendet. Also habe ich eine Klasse erstellt:
[highlight=vb.net]
Public Class clsPfade
Public Pfad_Ein As String
Public Pfad_Aus As String
Public Function PfadeEA_Einlesen()
Dim setting As New XmlReaderSettings()
Dim reader As XmlReader = XmlReader.Create("C:\test\PfadConfig.xml")
'Objekt erstellen und instantiieren
Dim clsPfdEA As clsPfade
clsPfdEA = New clsPfade
'Einstellungen für XML-Datei festlegen
setting.ConformanceLevel = ConformanceLevel.Document
setting.IgnoreWhitespace = True
setting.IgnoreComments = True
reader.MoveToContent()
reader.ReadToDescendant("Eingang")
clsPfdEA.Pfad_Ein = reader.ReadElementString()
reader.ReadToDescendant("Ausgang")
clsPfdEA.Pfad_Aus = reader.ReadElementString()
'Eingelesene Pfade zurückgeben
Return clsPfdEA
End Function
End Class
[/highlight]
Wenn ich den Code per Einzelschritt durchgehe, enthält clsED1 bei der Return-Anweisung die richtigen Daten. Wenn ich mir dann aber in der aufrufenden Form.Load-Anweisung in Label-Steuerelementen die Daten anzeigen lassen will, zeigen die nichts an. Wie kriege ich die Daten vernünftig übergeben? Macht man das überhaupt so? Habt Ihr evtl. bessere Vorschläge?
Danke für Eure Hilfe
Rene
Ich bin neu hier im Forum und arbeite an einem VB.Net Projekt. Ich bin von VB6 umgestiegen und mache gerade die ersten Erfahrungen mit Klassen.
Nun zu meinem Problem: Ich möchte aus einer XML-Datei die Pfadangaben für Dateien herauslesen. Das sind die Pfade für einen Eingangs- und einen Ausgangsordner. Also gibt die Function zwei Werte zurück. Ich hatte dazu ein wenig im Netz gesucht und den Hinweis gefunden, dass man in solch einem Fall eine Klasse als Rückgabetyp verwendet. Also habe ich eine Klasse erstellt:
[highlight=vb.net]
Public Class clsPfade
Public Pfad_Ein As String
Public Pfad_Aus As String
Public Function PfadeEA_Einlesen()
Dim setting As New XmlReaderSettings()
Dim reader As XmlReader = XmlReader.Create("C:\test\PfadConfig.xml")
'Objekt erstellen und instantiieren
Dim clsPfdEA As clsPfade
clsPfdEA = New clsPfade
'Einstellungen für XML-Datei festlegen
setting.ConformanceLevel = ConformanceLevel.Document
setting.IgnoreWhitespace = True
setting.IgnoreComments = True
reader.MoveToContent()
reader.ReadToDescendant("Eingang")
clsPfdEA.Pfad_Ein = reader.ReadElementString()
reader.ReadToDescendant("Ausgang")
clsPfdEA.Pfad_Aus = reader.ReadElementString()
'Eingelesene Pfade zurückgeben
Return clsPfdEA
End Function
End Class
[/highlight]
Wenn ich den Code per Einzelschritt durchgehe, enthält clsED1 bei der Return-Anweisung die richtigen Daten. Wenn ich mir dann aber in der aufrufenden Form.Load-Anweisung in Label-Steuerelementen die Daten anzeigen lassen will, zeigen die nichts an. Wie kriege ich die Daten vernünftig übergeben? Macht man das überhaupt so? Habt Ihr evtl. bessere Vorschläge?
Danke für Eure Hilfe
Rene
Comment