在treeview控件中读取xml文件中的属性值
XML文件格式
<family>
 <item name="n1" ico="i1">
   <item name="n2" urlu2" ico="i2">
       <item name="n3" url="u3" ico="i3"/>
       <item name="n4" url="u4" ico="i5"/>
   </item>
   <item name="n5" url="u5" ico="i5">
       <item name="n6"/>
       <item name="n7" url="u7" ico="i7"/>
  </item>
 </item>
<family>--我现在想在取 xml中name属性  下面为VB中的代码
Private Sub AddNode(ByRef XML_Node As IXMLDOMNode, Optional ByRef TreeNode As Node)
    Dim xNode As Node
    Dim xNodeList As IXMLDOMNodeList
    Dim i As Long
    
    If TreeNode Is Nothing Then
        Set xNode = TreeView1.Nodes.Add
    Else
        Set xNode = TreeView1.Nodes.Add(TreeNode, tvwChild)
    End If
    
    xNode.Expanded = True
    xNode.Text = XML_Node.nodeName
    
    If xNode.Text = "#text" Then
        xNode.Text = XML_Node.nodeTypedValue 
    Else
         '***注 :这个地方我不会写如何取xml中name的属性值呢,执行时说不支持属性和方法
          xNode.Text = "<" + xNode.Attributes(0).nodeValue + ">"
        
    End If
    
    Set xNodeList = XML_Node.childNodes
    For i = 0 To xNodeList.length - 1
        AddNode xNodeList.Item(i), xNode
    Next
End Sub
--有知道的请告诉一下小弟先谢谢大家了

解决方案 »

  1.   

    Modest(塞北雪貂)·(偶最欣赏楼主的分) 
    我试了一下,不行啊 还是不支持属性和方法  node里没有attributes这个属性啊
      

  2.   

    我把          xNode.Text = "<" + xNode.Attributes(0).nodeValue + ">"
    改成了           xNode.Text = "<" + XML_Node.Attributes(0).Text + ">"
    还是不行报 对象变量或With变量未设定
      

  3.   

    我试了一下还是不行 xNodeList(0).Attributes(0).text 是我写的顺序的问题么
    xNodeList在一开始还没有定义
    Modest(塞北雪貂)·(偶最欣赏楼主的分)
    我想请问一下在我取得了treeview里的index 我能在对应的xml里找到与之相应的那条记录么
    如我treeview 里的index取得三  在xml与之相应的信息应该是   <item name="n2" url="u2" ico="i2">  我这个时候想取ico="i2" 能取到么Modest(塞北雪貂)·(偶最欣赏楼主的分)
    呵呵真不好意思麻烦你这么多次