CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  VB.NET

怎样用程序实现在TreeView控件中添加根结点和子结点?

楼主tianyaya()2005-05-26 09:29:38 在 .NET技术 / VB.NET 提问

 
  怎样用程序实现在TreeView控件中添加根结点和子结点? 问题点数:100、回复次数:4Top

1 楼rheleven(::☆痛并快乐着★::)回复于 2005-05-26 09:31:49 得分 60

Private     Sub     frmDirDemo_Load(ByVal     sender     As     System.Object,     ByVal     e     As     System.EventArgs)     Handles     MyBase.Load      
                                Dim     oNode     As     New     System.Windows.Forms.TreeNode()      
                                Dim     rootDir     As     String      
                                Try      
                                                oNode.ImageIndex     =     0      
                                                oNode.SelectedImageIndex     =     0      
                                                oNode.Text     =     "我的电脑"      
                                                TreeView1.Nodes.Add(oNode)      
                                                Dim     xx,     i      
                                                For     Each     rootDir     In     Directory.GetLogicalDrives      
                                                                Dim     subNode     As     New     System.Windows.Forms.TreeNode()      
                                                                xx     =     Split(rootDir,     "\")      
                                                                subNode.Text     =     xx(0)      
                                                                oNode.Nodes.Insert(i,     subNode)      
                                                                oNode.Nodes.Item(i).Nodes.Add("")      
                                                                i     =     i     +     1      
                                                Next      
                                Catch     ex     As     Exception      
                                                MsgBox("Cannot     create     initial     node:"     &     ex.ToString)      
                                                End      
                                End     Try      
                End     Sub      
                Private     Sub     TreeView1_BeforeExpand(ByVal     sender     As     Object,     ByVal     e     As     System.Windows.Forms.TreeViewCancelEventArgs)     Handles     TreeView1.BeforeExpand      
                                If     e.Node.ImageIndex     =     2     Then     Exit     Sub      
     
                                Try      
                                                If     e.Node.GetNodeCount(False)     =     1     And     e.Node.Nodes(0).Text     =     ""     Then      
                                                                e.Node.Nodes(0).Remove()      
                                                                EnumerateChildren(e.Node)      
                                                End     If      
                                Catch     ex     As     Exception      
                                                MsgBox("Unable     to     expand     "     &     e.Node.FullPath     &     ":"     &     ex.ToString)      
                                End     Try      
     
                                If     e.Node.GetNodeCount(False)     >     0     Then      
                                                e.Node.ImageIndex     =     1      
                                                e.Node.SelectedImageIndex     =     1      
                                End     If      
     
                End     Sub      
     
                Private     Sub     EnumerateChildren(ByVal     oParent     As     System.Windows.Forms.TreeNode)      
     
                                Dim     xx     As     String     =     oParent.FullPath      
                                xx     =     Replace(xx,     "我的电脑\",     "")      
                                Dim     oFS     As     New     DirectoryInfo(xx     &     "\")      
                                Dim     oDir     As     DirectoryInfo      
                                Dim     oFile     As     FileInfo      
     
                                Try      
                                                For     Each     oDir     In     oFS.GetDirectories()      
                                                                Dim     oNode     As     New     System.Windows.Forms.TreeNode()      
                                                                oNode.Text     =     oDir.Name      
                                                                oNode.ImageIndex     =     0      
                                                                oNode.SelectedImageIndex     =     0      
                                                                oParent.Nodes.Add(oNode)      
                                                                oNode.Nodes.Add("")      
                                                Next      
                                Catch     ex     As     Exception      
                                                MsgBox("Cannot     list     folders     of     "     &     oParent.FullPath     &     ":"     &     ex.ToString)      
                                End     Try      
     
                                Try      
                                                For     Each     oFile     In     oFS.GetFiles()      
                                                                Dim     oNode     As     New     System.Windows.Forms.TreeNode()      
                                                                oNode.Text     =     oFile.Name     &     "     ("     &     oFile.Length     &     "     bytes)"      
                                                                oNode.ImageIndex     =     2      
                                                                oNode.SelectedImageIndex     =     2      
                                                                oParent.Nodes.Add(oNode)      
                                                Next      
                                Catch     ex     As     Exception      
                                                MsgBox("Cannot     list     files     in     "     &     oParent.FullPath     &     ":"     &     ex.ToString)      
                                End     Try      
     
                End     Sub      
     
                Private     Sub     TreeView1_BeforeCollapse(ByVal     sender     As     Object,     ByVal     e     As     System.Windows.Forms.TreeViewCancelEventArgs)     Handles     TreeView1.BeforeCollapse      
                                e.Node.ImageIndex     =     0      
                                e.Node.SelectedImageIndex     =     0      
                End     Sub      
  Top

2 楼laker34(HEEHE)回复于 2005-05-26 09:33:10 得分 38

Dim   t,   t2   As   TreeNode  
  t   =   TreeView.Nodes.Add("Root   Item   1")   '添加根节点(方法一)  
   
  t2   =   t.Clone()  
  t2.Text   =   "Root   Item   2"  
  TreeView.Nodes.Add(t2)   '在根节点添加(方法一)  
   
  t2   =   t.Nodes.Add("Item   1   in   Root   Item   1")   '在根节点一下面添加(方法一)  
   
  t2   =   t2.Clone()  
  t2.Text   =   "Item   2   in   Root   Item   1"  
  t.Nodes.Add(t2)   '在根节点一下面添加(方法二)  
   
  Top

3 楼haoztao(.NET一族)回复于 2005-05-26 09:34:25 得分 2

看看楼上提供的信息吧。。Top

4 楼tianyaya()回复于 2005-05-26 09:37:26 得分 0

谢谢大家  
   
  CSDN就是好阿,,,热情阿Top

相关问题

  • 在Treeview 控件中加载子结点时,如要添加仅万个子结点,如何做到最快?
  • Treeview控件,如何检测某结点的子结点?
  • 使用treeview控件,如何在父结点上加子结点啊?
  • TREEVIEW控件例子(如:怎样生成根结点和子结点等!!)
  • 怎么对在DialogBase的TreeView控件里“动态”删除 添加结点;(+怎样在Tree控件里右键弹出菜单)
  • [请教]treeview控件如何实现结点的双击事件?
  • C#webform中TreeView控件结点的id怎么存?
  • 请问怎样给TreeView控件中的结点重命名?
  • TreeView控件结点默认不展开怎么设置?
  • 怎么样判断TreeView控件的一个结点下面有没有子结点了?

关键词

  • onode
  • treeview
  • rootdir
  • subnode
  • node
  • byval
  • xx
  • dim
  • sub
  • try

得分解答快速导航

  • 帖主:tianyaya
  • rheleven
  • laker34
  • haoztao

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo