求把XML数据代入LISTVIEW的例子

解决方案 »

  1.   

    Private Sub LoadXML()
    'Xml文件结构如下:
    '  <?xml version="1.0" encoding="gb2312" ?>
    '- <test>
    '  <type name="古典武侠">侠义天下</type>
    '- <book name="寻秦记" author="黄易" price="25">
    '  <chapter2 title="科学疯子" page="87">被拉过去当实验品</chapter2>
    '  <chapter3 title="阴错阳差" page="44">实验失败,来到了三年前秦国</chapter3>
    '  <chapter4 title="美蚕娘" page="26">在荒野山村遇到美蚕娘</chapter4>
    '  </book>
    '  </test>
        Dim xmlDom As New DOMDocument
        Dim xmlNode As IXMLDOMElement
        Dim i As Integer
        
        xmlDom.Load (App.Path + "\xml.xml")
        Set xmlNode = xmlDom.documentElement.childNodes(1)
        
        If xmlDom.documentElement Is Nothing Then
            Exit Sub
        End If
        
        ListView1.ListItems.Clear
        With ListView1.ColumnHeaders
            .Clear
            .Add , , "章节"
            .Add , , "题目"
            .Add , , "页数"
            .Add , , "内容简介"
            .Item(1).Width = 1000
            .Item(2).Width = 1000
            .Item(3).Width = 600
            .Item(4).Width = 1750
        End With
        
        
        For i = 0 To xmlNode.childNodes.length - 1
            With ListView1.ListItems.Add(, , xmlNode.childNodes(i).nodeName)
                .SubItems(1) = xmlNode.childNodes(i).Attributes(0).Text
                .SubItems(2) = xmlNode.childNodes(i).Attributes(1).Text
                .SubItems(3) = xmlNode.childNodes(i).Text
            End With
        NextEnd Sub
      

  2.   

    出现 with 变量未设置错误,刚接触XML,不知道错在哪
      

  3.   

    我做的一个treeview的
    Dim objXML As DOMDocument
    Dim nXML  As Node
    Dim childnode As Node
    Dim secondnode As NodePrivate Sub Command1_Click() 'xmlDom object
     'Set objXML = CreateObject("Microsoft.XMLDOM")
     Set objXML = New DOMDocument
     objXML.async = False
     'load the xml menu file
     objXML.Load ("mysites.xml")
     Set objLst = objXML.getElementsByTagName("site")
     'how many items
     intNoOfHeadlines = objLst.length
     'looping over the items -1 because it's starts from 0\
     Set nXML = TreeView1.Nodes.Add(, , "root", "站点信息")
     'Call LoadTree(nXML, children)
    For i = 0 To intNoOfHeadlines - 1
        Set objHdl = objLst.Item(i)
        key1 = "p" & i
        Set childnode = TreeView1.Nodes.Add(nXML, tvwChild, "", objHdl.childNodes(0).Text)
        Set secondnode = TreeView1.Nodes.Add(childnode, tvwChild, "", objHdl.childNodes(1).Text)
        'List2.AddItem objLst.Item(i).Attributes(i).Text
        'List3.AddItem objHdl.childNodes(2).Text
    NextEnd Sub
      

  4.   

    mysites.xml<?xml version="1.0"?>
    <mysites>
    <site>
    <topic>news</topic>
    <name>CNN</name>
    <url>http://www.cnn.com</url>
    </site>
    <site>
    <topic>sport</topic>
    <name>Sydney 2000</name>
    <url>http://www.olympics.com</url>
    </site>
    <site><topic>Travel</topic><name>VirtualTourist</name><url>http://www.virtultourist.com</url></site><site><topic>computers</topic><name>Experts-exchange</name><url>http://www.experts-exchange.com</url></site><site><topic>computers</topic><name>Microsoft</name><url>http://www.microsoft.com</url></site><site><topic>sport</topic><name>Sportelo</name><url>http://www.sportelo.co.il</url></site><site><topic>computers</topic><name>myscript</name><url>http://www.myscript.co.il</url></site><site><topic>computers</topic><name>asp101</name><url>http://www.asp101.com</url></site><site><topic>y</topic><name>y</name><url>http://y</url></site></mysites>
      

  5.   

    好了,原来是应该引用 xml 2.0