REQ: XML Reader in Textbox unter VB.net
Brunnman 01.06.2005 - 10:16 1225 5
Brunnman
Addicted
|
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: 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
Bearbeitet von Brunnman am 01.06.2005, 12:00
|
rettich
Legendwaffle, waffle!
|
wo genau ist das problem? gib die strings halt nicht mit "console.writeline" aus sondern schreib sie in "tbxMyTextBox.Text"
|
Brunnman
Addicted
|
wo genau ist das problem?
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: 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
Legendwaffle, waffle!
|
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.
Bearbeitet von rettich am 01.06.2005, 11:58
|
Brunnman
Addicted
|
waaaah, sry, bin geistig ned voll da, das mim überschreiben hab ich vergessen thx
|
rettich
Legendwaffle, waffle!
|
np
|