Я пытаюсь преобразовать мои XML-файлы в Список, чтобы использовать его в точности так, как показано в этом примере с полями со списком
https://www.dreamincode.net/forums/topic/377224-combobox-displaymember-and-valuemember-winforms/
Public Class Form1
Private _people As New List(Of Person)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
_people.Add(New Person With {.FirstName = "Bob", .Age = 23, .NickName = "Bobby"})
_people.Add(New Person With {.FirstName = "Fred", .Age = 24, .NickName = "Freddy"})
cboPerson.DataSource = _people
cboPerson.DisplayMember = "FirstName"
cboPerson.ValueMember = "Age"
End Sub
Private Sub cboPerson_SelectionchangeCommitted(sender As Object, e As EventArgs) Handles cboPerson.SelectionchangeCommitted
If cboPerson.SelectedIndex <> -1 Then
MessageBox.Show(cboPerson.SelectedValue.ToString())
End If
End Sub
Class Person
Property FirstName As String
Property Age As Integer
Property NickName As String
End Class
В приведенном выше примере показано добавление сведений оЛюди вручную во время события загрузки.Я хочу использовать мои XMls в качестве источника данных, и в моем XML много разных таблиц.В настоящее время я храню все свои XML-файлы в одном каталоге и считываю их в набор данных и использую в качестве исходного списка.Теперь я хочу сделать это точно так же, но вместо данных я хочу использовать список, как показано в примере.
Структура XML
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Persons xmlns:xsi="http://www.XXX-sample.com/XMLSchema">
<Person>
<Name>Name1</Name>
<Age>2</Age>
<NickName>NcN1</NickName>
</Person>
<Person>
<Name>Name2</Name>
<Age>20</Age>
<NickName>NcN2</NickName>
</Person>
<Location>
<Location>Location1</Location>
<Zip>2065</Zip>
<City>NcN1</City>
</Location>
<Location>
<Location>Location2</Location>
<Zip>2065</Zip>
<City>NcN2</City>
</Location>
</Persons>
Я хочу, чтобы все мои таблицы были в XML (например, Person иРасположение) в список и из всех XML-файлов в каталоге.Любая помощь будет принята с благодарностью.Спасибо.
Я сделал что-то подобное, но я вижу только заголовки в моем обзоре данных
Public _people As New List(Of Person)
Dim deserializer As XmlSerializer = New XmlSerializer(GetType(Person))
Dim reader As TextReader = New StreamReader("data.xml")
Dim obj As Object = deserializer.Deserialize(reader)
Dim XmlData As Person= CType(obj, Person)
reader.Close()
DataGridView1.DataSource = _people