XML to TreeView

eidii

New member
Joined
Feb 3, 2007
Messages
3
Programming Experience
Beginner
Hallo everybody,

I need help by expert because I'm a beginner.
I have this XML structure:
<album>
<pictures>
<files>
<filename>picture1.jpg</filename>
<desc>My first picture</desc>
<dir>picture</dir>
<size>500</size>
<check>1</check>
</files>
<files>
<filename>picture2.jpg</filename>
<desc>My second picture</desc>
<dir>picture</dir>
<size>600</size>
<check>1</check>
</files>

</pictures>
<movies>
<files>
<filename>movie1.avi</filename>
<desc>My first movie</desc>
<dir>movie</dir>
<size>1500</size>
<check>1</check>
</files>
<files>
<filename>movie2.avi</filename>
<desc>My second movie</desc>
<dir>movie</dir>
<size>6500</size>
<check>1</check>
</files>

</movies>
</album>

First of I wanna fill a TreeView to obtain the following view:
ALBUM
|
| -----PICTURES
|+++++++++++|
|+++++++++++ -----My first picture
|+++++++++++ -----My second picture
|
| -----MOVIES
|+++++++++|
|+++++++++ -----My first movie
|+++++++++ -----My second movie

After that when I double click on for example "My first picture" I would like to download the picture from a path like http://MY URL/<dir>/<filename>
Now I'm using this code
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim xmlDoc As New XmlDocument()
Dim tnNode As TreeNode
xmlDoc.Load(xmlfile)
TreeView1.Nodes.Clear()
TreeView1.Nodes.Add(xmlDoc.DocumentElement.Name)
tnNode = New TreeNode
tnNode = TreeView1.Nodes(0)
AddNode(xmlDoc.DocumentElement, tnNode)
Catch xmlEx As XmlException
MessageBox.Show(xmlEx.Message)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub AddNode(ByVal inXmlNode As XmlNode, ByVal inTreeNode As TreeNode)
Dim xNode As XmlNode
Dim tNode As TreeNode
Dim nodeList As XmlNodeList
Dim i As Integer
If inXmlNode.HasChildNodes Then
nodeList = inXmlNode.ChildNodes
i = 0
While i <= nodeList.Count - 1
xNode = inXmlNode.ChildNodes(i)
'If nodeList.Count = 1 Then
inTreeNode.Nodes.Add(New TreeNode(xNode.Name))
tNode = inTreeNode.Nodes(i)
AddNode(xNode, tNode)
i += 1
End While
Else
inTreeNode.Text = (inXmlNode.OuterXml).Trim
End If
End Sub

but in the Treeview I have also the <files>,<dir>,<size> and <check> nodes.....and I want to skip this tags from Treeview.

Thanks.
 
Last edited:
Back
Top