VB6将XML数据传入TreeView控件

treeview|xml|控件|数据

  由于XML文档是以树形结构为格式,所以通常采用TreeView控件显示它们。以下码段说明了如何在Visual Basic 6将XML文档传入一个TreeView控件。

  首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器。

  接着,在Form_Load事件中添加如下的代码:

 

Private Sub Form_Load()
Dim objDOM As DOMDocument

Set objDOM = New DOMDocument
Call objDOM.loadXML( _
"<Doc><Node1></Node1><Node2><ChildNode/></Node2></Doc>")

Call AddNode(objDOM.documentElement, Nothing)

Set objDOM = Nothing
End Sub
 

  以上代码建立并传入XML,然后调用AddNode方法。它包含两个变量:添加的XML节点,添加的TreeView节点。AddNode方法第一次被调用,"Nothing"被传递到TreeNode变量。

Private Sub AddNode(ByRefXMLNode As IXMLDOMNode, ByRefTreeNode As Node)
 Dim objNode As Node
 Dim xmlNodeList As IXMLDOMNodeList
 Dim lngNodeIndex As Long

 On Error GoTo ERR_HANDLER

 If TreeNode Is Nothing Then
  Set objNode = TreeView1.Nodes.Add
 Else
  Set objNode = TreeView1.Nodes.Add(TreeNode, tvwChild)
 End If

 objNode.Text = XMLNode.nodeName
 objNode.Expanded = True

 '== Add child nodes
 Set xmlNodeList = XMLNode.childNodes
 For lngNodeIndex = 0 To xmlNodeList.length - 1
  Call AddNode(xmlNodeList.Item(lngNodeIndex), objNode)
 Next lngNodeIndex

 ERR_HANDLER:
  If Err.Number <> 0 Then
   MsgBoxErr.Description
  End If
End Sub
 

  首先AddNode方法添加一个新的节点到树形控件,然后将节点的文本传递给XML节点的名称。如果XML节点包含有子节点,AddNode方法则递进地添加子节点,直到所有子节点被传递。

 

时间: 2024-10-23 23:29:59

VB6将XML数据传入TreeView控件的相关文章

使用多线程加载多个Xml文件到TreeView控件

treeview|xml|多线程|加载|控件 在很多情况下程序员需要采用多线程来开发应用程序,用户可以在前台操作数据或其他工作,在后台程序正在加载很大的一些文件,而这一过程不会影响到前台的用户.在这篇文章中,我来讲述一下怎样通过多个线程来加载多个文件.在这个例子中我们将来研究这样一件事情,读取多个Xml文件并通过TreeView把它们显示出来.我们可以通过数据库来完成,不过为了保持例子的简单这里采用了Xml文件. 你会注意到我们有两个xml文件同原代码放在一起.程序用户界面如下: Filedis

C#:从DataGridView控件托放数据到TreeView控件

datagrid|treeview|控件|数据 实现方法,在datagridview的mousedown事件中开始 托放.然后在treeview 的 DragEnter 中接收托放.最后在treeview的 DragDrop 中处理托放结果.注:treeview的allowdrop属性要设置为 true.: 1private void dataGridView1_MouseDown(object sender, MouseEventArgs e) 2        { 3           

从 DataGridView 控件 托放数据 到 TreeView控件(二)

前面已经实现了从 DataGridView 拖放数据到 TreeView.不过拖放是通过 鼠标右键完成的. 根据windows的一般标准,是通过鼠标左键来进行数据拖放操作的.像windows资源管理器,既能处理鼠标左键单机的选择,也能处理左键拖放操作.这个怎么实现?前面我们只处理了 DataGridView 的mousedown事件, 现在要处理 mousedown, mousemove, mouseup这三个事件来完成这个任务.大致过程如下: 在MouseDown事件里面和之前一样处理,只是不

从 DataGridView 控件 托放数据 到 TreeView控件

实现方法,在datagridview的mousedown事件中开始 托放.然后在treeview 的 DragEnter 中接收托放.最后在treeview的 DragDrop 中处理托放结果.注:treeview的allowdrop属性要设置为 true.:  1private void dataGridView1_MouseDown(object sender, MouseEventArgs e) 2        { 3            if (e.Button == MouseBu

TreeView控件的使用

说在前面 好多网友来信要求我们写一些 ActiveX 控件的文章,其实对此我们早有计划.记得去年我们筹划 BOE 工作时的时候,小李就写好了一篇关于 ListView 的文章,十分不幸的是小李的机器遭黑客攻击,这篇文章丢失了:这阵子小李又要应付一场考试,没有空闲撰写文章.于是我就勉为其难,代替小李完成 TreeView 控件的介绍,以后有关 ActiveX 的内容仍有小李负责. ActiveX 是扩展应用程序功能的重要手段,但市面上有关 Visual FoxPro 与 ActiveX 控件的介绍

在VB6中将XML传入一个TreeView控件

treeview|xml|控件 首先,建立一个新的带有窗体的Visual Basic 6工程,然后在窗体中添加一个TreeView控件,并添加一个引用到微软XML解析器. 接着,在Form_Load事件中添加如下的代码: Private Sub Form_Load() Dim objDOM As DOMDocument Set objDOM = New DOMDocument Call objDOM.loadXML( _ "") Call AddNode(objDOM.document

创建可编辑的xml文档(之一)绑定xml文档到treeview 控件

treeview|xml|创建|控件 目录:    介绍    绑定xml文档到treeview 控件    过滤xml 数据    执行拖放操作    执行删除,改名,插入操作    使用中的treeview 控件   通过xml 和xpath 你可以毫不费力的为你的treeview控件增加拖放甚至更多的功能-by Alex Hildyard   最近,我一直在开发一个用来维护在线目录的用户界面工具,因为这个目录包含太多的产品,所以用一些方法对他们分类是很有意义的.目录管理员将需要有删除和定义

在ASP.NET中使用Treeview控件和XML

asp.net|treeview|xml|控件 以前,在WEB页面中如果想使用树形控件的话,往往会有些麻烦,有时甚至要自己写代码来达到用树形列表显示数据的目的.在asp.net中,我们可以很方便地使用由微软提供的Internet Exploer Web Controls控件来实现树形列表.在微软提供的这套Internet Exploere Web Controls控件集合中,包括有MultiPage,TabStrip,TOOLbar,Treeview控件.在这篇文章中,我们来看在ASP.net中

创建可编辑的xml文档(之五)执行中的treeview 控件

treeview|xml|创建|控件|执行 执行中的treeview 控件  为了更完美,列表4包含了VB.NET version, or C# version 两个版本的最终treevie 控件.为了更容易使用,我重新定义了结构和代码.同时增加了KeyDown 控制来支持一些默认的快捷键例如:Control-N (新建), F2 (编辑), 和DEL (删除).  这里好象不必附加任何事件,因此最终的api 包含一个方法和八个属性,他们在表1中列出来了,他们大多数都是简单的标志,或者默认的开关