为了能够从TreeView控件中获取数据,你必须反复访问树形控件中的节点并把它们添加到一个XML文档。下面的WriteTreeToDOM方法说明了在Visual Basic 6中的这一过程。程序必须需要引用到微软的XML剖析器,这样这一方法才有效。
这一方法包含两个参数变量。第一个是要添加到XML文档中的TreeView控件节点,第二个是要添加到新元素中的XML节点。当WriteTreeToDOM第一次被调用时,一个DOMDocument对象就会被传递并作为XML节点。
Private Sub WriteTreeToDOM(ByRefTreeNode As Node, _
ByRefXMLNode As IXMLDOMNode)
Dim objNewNode As IXMLDOMNode
Dim objDOM As DOMDocument
Dim objChildNode As Node
On Error GoTo ERR_HANDLER
Set objDOM = XMLNode.ownerDocument
If objDOM Is Nothing Then
Set objDOM = XMLNode
End If
Set objNewNode = objDOM.createElement(TreeNode.Text)
'Add treeview node as child
Call XMLNode.appendChild(objNewNode)
'Process child nodes
If TreeNode.children > 0 Then
Set objChildNode = TreeNode.Child
Do Until objChildNode Is Nothing
Call
WriteTreeToDOM(objChildNode, objNewNode)
Set
objChildNode = objChildNode.Next
Loop
End If
ERR_HANDLER:
If Err.Number <> 0 Then
MsgBoxErr.Description
End If
End Sub
方法中的第一步是从XMLNode变量中重新获取一个引用到DOMDocument,通常用于从TreeView节点建立一个新元素,然后新元素被作为一个子节点添加到XML节点。
接着,检查TreeView中的子节点,如果含有子节点,则递进地对每一节点调用WriteTreeToDOM方法,这一过程将遍及树形控件中的所有节点。