接着,在Form_Load事件中添加如下的代码:
PrivateSubForm_Load()
DimobjDOMAsDOMDocument
SetobjDOM=NewDOMDocument
CallobjDOM.loadXML(_
"")
CallAddNode(objDOM.documentElement,Nothing)
SetobjDOM=Nothing
EndSub
以上代码建立并传入XML,然后调用AddNode方法。它包含两个变量:添加的XML节点,添加的TreeView节点。AddNode方法第一次被调用,"Nothing"被传递到TreeNode变量。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)PrivateSubAddNode(ByRefXMLNodeAsIXMLDOMNode,ByRefTreeNodeAsNode)
DimobjNodeAsNode
DimxmlNodeListAsIXMLDOMNodeList
DimlngNodeIndexAsLong
OnErrorGoToERR_HANDLER
IfTreeNodeIsNothingThen
SetobjNode=TreeView1.Nodes.Add
Else
SetobjNode=TreeView1.Nodes.Add(TreeNode,tvwChild)
EndIf
objNode.Text=XMLNode.nodeName
objNode.Expanded=True
注释:==Addchildnodes
SetxmlNodeList=XMLNode.childNodes
ForlngNodeIndex=0ToxmlNodeList.length-1
CallAddNode(xmlNodeList.Item(lngNodeIndex),objNode)
NextlngNodeIndex
ERR_HANDLER:
IfErr.Number0Then
MsgBoxErr.Description
EndIf
EndSub
首先AddNode方法添加一个新的节点到树形控件,然后将节点的文本传递给XML节点的名称。如果XML节点包含有子节点,AddNode方法则递进地添加子节点,直到所有子节点被传递。
->