Solved

Loop through xml elements

Posted on 2010-11-08
4
1,588 Views
Last Modified: 2012-05-10
My xml is below.  I want to loop through my xml and create a new map element based on the values in that RetailTowns node


For Each XElement In myXML.Elements

            Dim retailPushpin As New Pushpin

            retailPushpin.Name = myXML.Elements("Town").Value

            retailPushpin.Location = New Location(myXML.Elements("Longitude").Value, myXML.Elements("Latitude").Value)

            retailPushpin.Content = myXML.Elements("Town").Value

            retailPushpin.Visibility = Visibility.Visible



            retailTowns.Children.Add(retailPushpin)

        Next

Open in new window

RetailTowns.xml
0
Comment
Question by:DotNetNooby
  • 2
  • 2
4 Comments
 
LVL 3

Accepted Solution

by:
kolakanuru1 earned 500 total points
ID: 34087989
       For Each XElement As XmlElement In myXML.GetElementsByTagName("RetailTowns Query")
            Dim Town As String = XElement.SelectSingleNode("Town").InnerText
            Dim Longitude As String = XElement.SelectSingleNode("Longitude").InnerText
        Next
0
 

Author Comment

by:DotNetNooby
ID: 34088049
I'm not able to access the As XML Element or myXML.GetElementsByTagName
    Sub LoadRetailTowns()

        Dim client As WebClient = New WebClient()

        AddHandler client.OpenReadCompleted, AddressOf OpenReadCallback

        Dim uri As Uri = New Uri("RetailTowns.XML", UriKind.Relative)

        client.OpenReadAsync(uri)

    End Sub

    Sub OpenReadCallback(ByVal sender As Object, ByVal e As OpenReadCompletedEventArgs)

        Dim myXML As XElement = XElement.Load(XmlReader.Create(e.Result))



        For Each XElement In myXML.Elements

            Dim retailPushpin As New Pushpin

            retailPushpin.Name = myXML.Elements("Town").Value

            retailPushpin.Location = New Location(myXML.Elements("Longitude").Value, myXML.Elements("Latitude").Value)

            retailPushpin.Content = myXML.Elements("Town").Value

        Next



    End Sub

Open in new window

0
 
LVL 3

Assisted Solution

by:kolakanuru1
kolakanuru1 earned 500 total points
ID: 34088122
       Dim myXML As XmlDocument = New XmlDocument()
        myXML.Load(FileName)
        For Each XElement As XmlElement In myXML.GetElementsByTagName("RetailTowns Query")
            Dim Town As String = XElement.SelectSingleNode("Town").InnerText
            Dim Longitude As String = XElement.SelectSingleNode("Longitude").InnerText
        Next



Replace the filename with filepath of the xmldocument. This is working fine in my test.
0
 

Author Closing Comment

by:DotNetNooby
ID: 34103234
solved
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
Browsing the questions asked to the Experts of this forum, you will be amazed to see how many times people are headaching about monster regular expressions (regex) to select that specific part of some HTML or XML file they want to extract. The examp…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

947 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

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now