Привет!
С Новым Годом!!! И всего всего.
Я не волшебник, а только учусь. По моему то, что ты пытаешься делать не правильно. Я так понимаю, первая строка в XML документе (<?xml version="1.0" encoding="utf-8"?>) что-то типа комента к нему и указывает на версию XML и кодировка там стандартная. И это не сам XML документ. Все что следует дальше - есть XML документ.
А для чтения данных из XML документа нужно использовать XMLTextReader или XMLNode.
Привиду два примера рабочего кода:
- Код: Выделить всё
Private Sub LeesXML() '// процедура чтения XMLдокумента
Dim rd As Xml.XmlTextReader = New Xml.XmlTextReader("D:\MyTypeEtiket.xml")
Dim tel As Int16
Do While rd.Read
Select Case rd.NodeType
Case Xml.XmlNodeType.Element
If rd.HasAttributes Then
For tel = 0 To rd.AttributeCount - 1
rd.MoveToAttribute(tel)
myType = rd.Value '// здесь моей переменной присваивается значение считанное из XML документа
cboEtiketType.Items.Add(myType) '// а здесь оно записывается в комбобокс на форме
Next
End If
Case Xml.XmlNodeType.Text
Case Xml.XmlNodeType.EndElement
End Select
Loop
End Sub
'// om gegevens te lezen van bepalde etiket
Private Sub LeesValueUitXML() '// а в этой процедуре считываются данные для определенного узла xml документа и выводятся в тексбоксы на форме.
Dim type As String : type = cboEtiketType.SelectedItem.ToString
Dim oDoc As New Xml.XmlDocument
Dim XMLZoekNode As Xml.XmlNode
oDoc.Load("D:\MyTypeEtiket.xml")
XMLZoekNode = oDoc.SelectSingleNode("Etiketten/typeEtiket[@id='" & type & "']") '// тут типа много разных этикеток и в зависимости от выбранного имени этикетки - переменная Type - из xml документа считываются значения параметров для этой этикетки (кол-во строк, колонок, верхней и левой маржи)
aantalrijen = XMLZoekNode("aantalrijen").InnerText
aantalkol = XMLZoekNode("aantalkol").InnerText
bovenmarge = XMLZoekNode("bovenmarge").InnerText
linkermarge = XMLZoekNode("linkermarge").InnerText
End Sub
'// а это xmlдокумент куда пишутся и откуда читаются значения для этикеток
<?xml version="1.0" ?>
- <Etiketten>
- <typeEtiket id="my">
<aantalrijen>6</aantalrijen>
<aantalkol>3</aantalkol>
<bovenmarge>20</bovenmarge>
<linkermarge>20</linkermarge>
</typeEtiket>
- <typeEtiket id="your">
<aantalrijen>8</aantalrijen>
<aantalkol>2</aantalkol>
<bovenmarge>30</bovenmarge>
<linkermarge>30</linkermarge>
</typeEtiket>
</Etiketten>
А ваще посмотри еще раз MSDN там в принципе нормальные примеры, это я сделал на их основе.
Удачи.