Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

populating a treeview from a xml source

Posted on 2009-04-06
1
Medium Priority
?
398 Views
Last Modified: 2013-11-08
I am really very new to asp.net. I have a code below that I am using to populate a treeview.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 
      Try
            ' SECTION 1. Create a DOM Document and load the XML data into it.
            Dim dom As New System.Xml.XmlDocument
            dom.Load("c:\uac\questionnaire.xml")
 
            ' SECTION 2. Initialize the treeview control.
            TreeView1.Nodes.Clear()
            TreeView1.Nodes.Add(New TreeNode(dom.DocumentElement.Name))
 
            Dim tNode As New TreeNode()
            tNode = TreeView1.Nodes(0)
 
            ' SECTION 3. Populate the TreeView with the DOM nodes.
            AddNode(dom.DocumentElement, tNode)
            ' SECTION 4. Create a new TreeView Node with only the child nodes.
            Dim nodelist As System.Xml.XmlNodeList = dom.SelectNodes("//child")
            Dim cDom As New System.Xml.XmlDocument()
            cDom.LoadXml("<children></children>")
            Dim node As System.Xml.XmlNode
            For Each node In nodelist
                Dim newElem As System.Xml.XmlNode = cDom.CreateNode(System.Xml.XmlNodeType.Element, node.Name, node.LocalName)
                newElem.InnerText = node.InnerText
                cDom.DocumentElement.AppendChild(newElem)
            Next
 
            TreeView1.Nodes.Add(New TreeNode(cDom.DocumentElement.Name))
            tNode = TreeView1.Nodes(1)
            AddNode(cDom.DocumentElement, tNode)
 
            TreeView1.ExpandAll()
 
        Catch xmlEx As System.Xml.XmlException
            MsgBox(xmlEx.Message)
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
 
    End Sub
    Private Sub AddNode(ByRef inXmlNode As System.Xml.XmlNode, ByRef inTreeNode As TreeNode)
        Dim xNode As System.Xml.XmlNode
        Dim tNode As TreeNode
        Dim nodeList As System.Xml.XmlNodeList
        Dim i As Long
 
        ' Loop through the XML nodes until the leaf is reached.
        ' Add the nodes to the TreeView during the looping process.
        If inXmlNode.HasChildNodes() Then
            nodeList = inXmlNode.ChildNodes
            For i = 0 To nodeList.Count - 1
                xNode = inXmlNode.ChildNodes(i)
                inTreeNode.ChildNodes.Add(New TreeNode(xNode.Name))
                tNode = inTreeNode.ChildNodes(i)
                AddNode(xNode, tNode)
            Next
        Else
            ' Here you need to pull the data from the XmlNode based on the
            ' type of node, whether attribute values are required, and so forth.
            inTreeNode.Text = (inXmlNode.OuterXml).Trim
        End If
    End Sub

Open in new window

0
Comment
Question by:Anthony Matovu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 2000 total points
ID: 24084842
0

Featured Post

NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
While opting for any web-to-print solution, you need to discuss with your team and some of your end users and know their opinions about your decisions. In this article we list down some questions you need to ask yourself.
This video teaches users how to migrate an existing Wordpress website to a new domain.
Learn how to set-up custom confirmation messages to users who complete your Wufoo form. Include inputs from fields in your form, webpage redirects, and more with Wufoo’s confirmation options.

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question