[VB.NET]求助:关于取treeview父结点的问题.(在线...)
来源:互联网 发布:软件开发 税种 编辑:程序博客网 时间:2024/04/30 06:24
<script type="text/javascript"><!--google_ad_client = "pub-8333940862668978";/* 728x90, 创建于 08-11-30 */google_ad_slot = "4485230109";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
求助:关于取treeview父结点的问题.(在线...)
我想取得某一结点(d)在treeview中的路径:a/b/d
a id context parent
├b 1 a 0
│└d 2 b 1
└c 3 c 1
4 d 2
*****************************************************
* While (ParentNode.ID <> 0) *
* ParentNode = ParentNode.Parent *
* 取得父结点的ID和Text *
* newPARENTID = ParentNode.ID *
* newCONTEXT = ParentNode.Text *
* ?合目? *
* Directory = newCONTEXT + / + Directory *
* 到?根?点退出循? *
* End While *
*****************************************************
可是取到最后, ParentNode = ParentNode.Parent 会出错.
如果把条件改成(ParentNode.ID > 1),不会出错,可是取不到父结点的路径.
求助,我是新手~~~~
__________________________________________________________________________
if( ParentNode.Parent isnot nothing ) then
ParentNode = ParentNode.Parent
....
....
else
....
endif
__________________________________________________________________________
改成> 0呢?
__________________________________________________________________________
改成> 0呢?
__________________________________________________________________________
先找到此项:
Dim myNode As TreeNode
For Each myNode In a
MsgBox(nd.Text)
MsgBox(nd.p)
nd.Nodes.g()
If myNode.Text = Trim(TextBox4.Text) Then
TreeView1.SelectedNode = myNode
myNode.Nodes.Add( 加了 )
myNode.Expand()
Exit For
End If
traverse(myNode.Nodes)
Next
End Sub
然后取其mynode.parent.text即可
__________________________________________________________________________
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Me.ListView1.View = View.Details
Me.ListView1.GridLines = True
Me.ListView1.Columns.Add( Name , 150, HorizontalAlignment.Left)
Me.ListView1.Columns.Add( CreationTime , 150, HorizontalAlignment.Left)
Dim drive As String
For Each drive In Environment.GetLogicalDrives
Dim cNode As New TreeNode()
cNode.Text = drive.ToString
Me.TreeView1.Nodes.Add(cNode)
Next
End Sub
Private Sub TreeView1_AfterSelect(ByVal sender As Object, _
ByVal e As System.Windows.Forms.TreeViewEventArgs) _
Handles TreeView1.AfterSelect
Me.ListView1.Items.Clear()
Try
Dim dir As New DirectoryInfo(Me.TreeView1.SelectedNode.Text)
Dim di As DirectoryInfo() = dir.GetDirectories()
Dim i As Integer
取目录=========关键所在
For i = 0 To di.Length - 1
If Not di(i).Name.Equals( . ) And Not di(i).Name.Equals( .. ) Then
Me.ListView1.Items.Add(di(i).Name)
Me.ListView1.Items(i).SubItems.Add(di(i).CreationTime.ToString())
End If
Next i
Catch di As Exception
MessageBox.Show(di.Message)
End Try
End Sub
__________________________________________________________________________
to:neil_cn(Neil)
最後一次取到的ParentNode.Parent的id是 TreeView1 ,
所以用isnot nothing 作为判断条件仍然会回到循环里。
to:magicbacon(Cannot help coding)
改成> 0也不好用。
to:cgtsea()
有点难,没看懂。我琢磨琢磨哈。
> _ __________________________________________________________________________
利用 depth 以及 type is nothing
__________________________________________________________________________
楼主,我很关注这个问题,能不能把加载treeview的代码全部贴出来。
__________________________________________________________________________
求助:关于取treeview父结点的问题.(在线...)
我想取得某一结点(d)在treeview中的路径:a/b/d
a id context parent
├b 1 a 0
│└d 2 b 1
└c 3 c 1
4 d 2
*****************************************************
* While (ParentNode.ID <> 0) *
* ParentNode = ParentNode.Parent *
* 取得父结点的ID和Text *
* newPARENTID = ParentNode.ID *
* newCONTEXT = ParentNode.Text *
* ?合目? *
* Directory = newCONTEXT + / + Directory *
* 到?根?点退出循? *
* End While *
*****************************************************
可是取到最后, ParentNode = ParentNode.Parent 会出错.
如果把条件改成(ParentNode.ID > 1),不会出错,可是取不到父结点的路径.
求助,我是新手~~~~
__________________________________________________________________________
if( ParentNode.Parent isnot nothing ) then
ParentNode = ParentNode.Parent
....
....
else
....
endif
__________________________________________________________________________
改成> 0呢?
__________________________________________________________________________
改成> 0呢?
__________________________________________________________________________
先找到此项:
Dim myNode As TreeNode
For Each myNode In a
MsgBox(nd.Text)
MsgBox(nd.p)
nd.Nodes.g()
If myNode.Text = Trim(TextBox4.Text) Then
TreeView1.SelectedNode = myNode
myNode.Nodes.Add( 加了 )
myNode.Expand()
Exit For
End If
traverse(myNode.Nodes)
Next
End Sub
然后取其mynode.parent.text即可
__________________________________________________________________________
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Me.ListView1.View = View.Details
Me.ListView1.GridLines = True
Me.ListView1.Columns.Add( Name , 150, HorizontalAlignment.Left)
Me.ListView1.Columns.Add( CreationTime , 150, HorizontalAlignment.Left)
Dim drive As String
For Each drive In Environment.GetLogicalDrives
Dim cNode As New TreeNode()
cNode.Text = drive.ToString
Me.TreeView1.Nodes.Add(cNode)
Next
End Sub
Private Sub TreeView1_AfterSelect(ByVal sender As Object, _
ByVal e As System.Windows.Forms.TreeViewEventArgs) _
Handles TreeView1.AfterSelect
Me.ListView1.Items.Clear()
Try
Dim dir As New DirectoryInfo(Me.TreeView1.SelectedNode.Text)
Dim di As DirectoryInfo() = dir.GetDirectories()
Dim i As Integer
取目录=========关键所在
For i = 0 To di.Length - 1
If Not di(i).Name.Equals( . ) And Not di(i).Name.Equals( .. ) Then
Me.ListView1.Items.Add(di(i).Name)
Me.ListView1.Items(i).SubItems.Add(di(i).CreationTime.ToString())
End If
Next i
Catch di As Exception
MessageBox.Show(di.Message)
End Try
End Sub
__________________________________________________________________________
to:neil_cn(Neil)
最後一次取到的ParentNode.Parent的id是 TreeView1 ,
所以用isnot nothing 作为判断条件仍然会回到循环里。
to:magicbacon(Cannot help coding)
改成> 0也不好用。
to:cgtsea()
有点难,没看懂。我琢磨琢磨哈。
> _ __________________________________________________________________________
利用 depth 以及 type is nothing
__________________________________________________________________________
楼主,我很关注这个问题,能不能把加载treeview的代码全部贴出来。
__________________________________________________________________________
- [VB.NET]求助:关于取treeview父结点的问题.(在线...)
- [求助]vb.net中treeview的问题!
- [VB.NET]求助---关于winows工程中窗口界面显示的问题,在线等
- [VB.NET]getfilenames的问题求助!
- [VB.NET]求助,简单的问题
- [VB.NET]关于远程连接数据库的问题*(在线等)
- [VB.NET][求助]关于在vs.net2005中连接oracle数据库的问题
- 求助asp.net中treeview的用法!谢谢各位!在线等!
- [VB.NET]asp.net vb.net 菜鸟问题~~~求助
- [VB.NET].net2005中Splitter问题求助
- [VB.NET].net的write函数求助
- [VB.NET]100分继续求助,急,在线等!!!!!!!!!!!!!!!
- [VB.NET]关于datatable在datagrade中显示的格式问题(在线)
- [VB.NET]treeView与数据库中的问题
- [VB.NET]VB中treeView问题,添加节点问题
- 关于TreeView的问题
- [VB.NET]急!求助
- [VB.NET]求助!
- [VB.NET]如何动态设置数据库访问方法
- [VB.NET]如何改变当前exe文件的运行路径?
- [SilkyBible] XviD系列-3
- 非正式测试用DDS写的“视频”传输程序
- [VB.NET]数据传递,绑定问题?
- [VB.NET]求助:关于取treeview父结点的问题.(在线...)
- [SilkyBible] XviD系列-4
- bnu1299 ZUMA C语言版
- bnu1054 杨辉三角 C语言版
- j2me 实现连连看的算法
- bnu1055 阶乘 C语言版
- Range Minimum Query and Lowest Common Ancestor
- 函数和函数对象
- city of angle