REQ: XML Reader in Textbox unter VB.net

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/req_xml_reader_in_textbox_unter_vb_net_143352/page_1 - zur Vollversion wechseln!


Brunnman schrieb am 01.06.2005 um 10:16

hat schonmal wer sowas programmiert?
mit der Konsole geht es einwandfrei, nur wie kann ich das umwandeln, dass das ganze mittels Buttonklick in eine Textbox eingelesen wird?

Code für die Consolenanwendung:

Code:
Dim xread As New XmlTextReader("C:\buecher.xml")
        With xread
            .WhitespaceHandling = WhitespaceHandling.Significant
            .Read()
            .Read()
            Do
                .Read()
                Console.WriteLine("ISBN: " & .GetAttribute("isbn") & " ")
                Console.WriteLine(xread.ReadElementString)
                If .Name = "untertitel" Then
                    Console.WriteLine(" - " & xread.ReadElementString)
                End If
                Console.Write(" von " & xread.ReadElementString)
                Console.WriteLine()
                Console.WriteLine(xread.HasAttributes)
                .Read()
            Loop Until (.Name = "bücher")
            .Close()
        End With
        Console.ReadLine()

hat wer eine idee?
msdn und google hat nicht wirklich viel brauchbares ausgespuckt,
tia, Brunni


rettich schrieb am 01.06.2005 um 10:23

wo genau ist das problem? :confused:

gib die strings halt nicht mit "console.writeline" aus sondern schreib sie in "tbxMyTextBox.Text"


Brunnman schrieb am 01.06.2005 um 11:51

Zitat von rettich
wo genau ist das problem? :confused:

gib die strings halt nicht mit "console.writeline" aus sondern schreib sie in "tbxMyTextBox.Text"

das problem ist, dass es so nicht läuft...
hier der code für txtEin.txt:
Code:
        Dim xread As New XmlTextReader("C:\buecher.xml")
        With xread
            .WhitespaceHandling = WhitespaceHandling.Significant
            .Read()
            .Read()
            Do
                .Read()
                txtEin.Text = "ISBN: " & .GetAttribute("isbn") & " "
                txtEin.Text = xread.ReadElementString
                If .Name = "untertitel" Then
                    txtEin.Text = " - " & xread.ReadElementString
                End If
                txtEin.Text = " von " & xread.ReadElementString
                txtEin.Text = xread.HasAttributes
                .Read()
            Loop Until (.Name = "bücher")
            .Close()
        End With

er gibt nur "false" aus, wars wars...
bei der Konsolenanwendung gibt er das richtige aus...


rettich schrieb am 01.06.2005 um 11:52

blubb, das ist klar, weil du dir mit jeder zeile den inhalt von vorher überschreibst. die letzte anweisung ist "txtEin.Text = xread.HasAttributes" und genau das steht auch drinnen.

mach ein "txtEin.Text += newText" draus (hab jetzt die syntax nicht im kopf, aber das wär mein first guess. sonst schau, obs zB ein "addLine" oder "appendText" gibt oder sonst halt auf die primitive "txtEin.Text = txtEin.Text + newText")

add:
oder füll zuerst alles in eine string-variable und schreib zum schluss die komplette variable in die textbox. "stringbuilder" sei hier als mögliches zauberwort genannt.

add2:
sorry, ich bin geistig in c# unterwegs, in VB.NET sollte es aber analog mit ähnlicher syntax gehen. "txtEin.Text = txtEin.Text + newText" geht zB sicher.


Brunnman schrieb am 01.06.2005 um 12:00

waaaah, sry, bin geistig ned voll da, das mim überschreiben hab ich vergessen :bash:

thx ;)


rettich schrieb am 01.06.2005 um 12:01

np :)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026