如何在treeview中解决这个问题

本文关键字:问题 解决 treeview | 更新日期: 2023-09-27 18:13:05

我正在用treeview从FTP导入数据

显示的是没有任何名称(node)的树视图。只有结构可见

我的代码是,

treeView1.Nodes.Clear();
            treeView1.Nodes.Add(CreateDirectoryNode(root, "root"));

private TreeNode CreateDirectoryNode(string root, string p)
        {
            var directoryNode = new TreeNode(name);
            var directoryListing = GetDirectoryListing(path);
            var directories = directoryListing.Where(d => d.IsDirectory);
            var files = directoryListing.Where(d => !d.IsDirectory);
            foreach (var dir in directories)
            {
                directoryNode.Nodes.Add(CreateDirectoryNode(dir.FullPath, dir.Name));
            }
            foreach (var file in files)
            {
                directoryNode.Nodes.Add(new TreeNode(file.Name));
            }
            return directoryNode;
        }

如何在treeview中解决这个问题

var directoryNode = new TreeNode(name);

这当然应该是…

var directoryNode = new TreeNode(p);

. .基于你的方法签名?

同时namepath不存在于你的方法中

Try

directoryNode.Text = name;

来自MSDN TreeNode类

Text -获取或设置树节点标签中显示的文本。

试题:

private TreeNode CreateDirectoryNode(string root, string p)
        {
            var directoryNode = new TreeNode(name);
            directoryNode.Text = name;
            var directoryListing = GetDirectoryListing(path);
            var directories = directoryListing.Where(d => d.IsDirectory);
            var files = directoryListing.Where(d => !d.IsDirectory);
            foreach (var dir in directories)
            {
                directoryNode.Nodes.Add(CreateDirectoryNode(dir.FullPath, dir.Name));
            }
            foreach (var file in files)
            {
                TreeNode tn = new TreeNode(file.Name);
                tn.Text = file.Name
                directoryNode.Nodes.Add(new TreeNode(tn));
            }
            return directoryNode;
        }

我不确定变量"名称"answers"路径"是从哪里来的?我猜它们等于根和p?我把它留给你们自己来处理