在treeview中显示磁盘目录时,怎样在label中显示选中某个节点的全部路径(C#)

2024-11-27 18:49:14
推荐回答(3个)
回答(1):

临时做了个比较简单的。只能获取文件夹,文件的没有获取,呵呵。 代码附上,如有什么疑问,请继续追问,如果没有,请采纳,谢谢using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;namespace TreeView
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
DriveInfo[] drive = DriveInfo.GetDrives();
foreach (DriveInfo d in drive)
{
TreeNode node = new TreeNode(d.Name);
node.Tag = d.RootDirectory;
treeView1.Nodes.Add(node);
}
} private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if (e.Node.Tag == null)
{
return;
}
label1.Text ="当前选中节点详细:\n"+ e.Node.Tag.ToString(); try
{
DirectoryInfo dir = new DirectoryInfo(e.Node.Tag.ToString());
DirectoryInfo[] dir_Arr = dir.GetDirectories();
if (dir_Arr != null)
{
foreach (DirectoryInfo di in dir_Arr)
{
TreeNode nd = new TreeNode(di.Name);
nd.Tag = di.FullName;
e.Node.Nodes.Add(nd);
}
}
}
catch (Exception ex)
{
ex.ToString();
}
}
}
}

回答(2):

this.treeView1.SelectedNode.FullPath 就是 当前 选中节点的路径 treeView1 为你的treeview的ID

回答(3):

在加载节点的时候就把路径放到节点的Tag里面。。你是做资源管理器么,,我有这个项目