Codigo XML:
<empresas>
<empresa nombre="EMPRESA1" bd="BD_EMPRESA1" />
<empresa nombre="EMPRESA2" bd="BD_EMPRESA2" />
<empresa nombre="EMPRESA3" bd="BD_EMPRESA3" />
<empresa nombre="EMPRESA4" bd="BD_EMPRESA4" />
empresas>
Codigo VB.net:
Dim _dsdetalle As DataSet ' yo he decidido llenar los datos del xml en un data set en primera instancia ya que este me servira para enlazar o llenar los datos despues en un combo que por cierto eleji para mostrar la informacion contenida en el xml
Private Sub FRM_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Xml As XmlDocument
Dim NodeList As XmlNodeList
Dim Node As XmlNode
Dim _DS As New DataSet
LlenarDS()
Try
Xml = New XmlDocument()
Xml.Load(Application.StartupPath & "\Inicio.xml") ' Ojo que este es la direccion de la carpeta donde se ejecuta el programa (software, aplicacion, sistema, etc ) prinicipal porque es ahi donde Inicio.xml yo le he guardado
NodeList = Xml.SelectNodes("/empresas/empresa")
For Each Node In NodeList
Dim rw As DataRow = _dsdetalle.Tables(0).NewRow
rw("razon_social") = Node.Attributes.GetNamedItem("nombre").Value
rw("bd") = Node.Attributes.GetNamedItem("bd").Value
_dsdetalle.Tables(0).Rows.Add(rw)
Next
CboEmpresa.DisplayMember = "razon_social"
CboEmpresa.ValueMember = "bd"
CboEmpresa.DataSource = _dsdetalle.Tables(0)
Catch ex As Exception
MsgBox(ex.GetType.ToString & vbNewLine & ex.Message.ToString)
Finally
Console.Read()
End Try
End Sub
'Damos forma a nuestro dataset en un subproceso aparte para que enlaze su contenido al combo
Private Sub LlenarDS()
_dsdetalle = New DataSet
_dsdetalle.Tables.Add(0)
With _dsdetalle.Tables(0).Columns
.Add("razon_social", System.Type.GetType("System.String"))
.Add("bd", System.Type.GetType("System.String"))
End With
End Sub