关于treeview问题,大家帮忙
我把某一目录的文件夹/文件绑定到treeview控件上,如下(已经实现),我同时设置了tv_Directory的CheckBoxes为true
:
/// <summary>
/// 填充数型目录
/// </summary>
private void FillTree(string sCurPath)
{
DirectoryInfo directory;
tv_Directory.Nodes.Clear();
try
{
directory = new DirectoryInfo(sCurPath);
if (directory.Exists == true )
{
TreeNode newNode = new TreeNode(directory.FullName);
tv_Directory.Nodes.Add(newNode);
FileList(newNode, directory);
}
else
{
MessageBox.Show("您要浏览的目录不存在,请重新选择目录!");
}
}
catch( Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/// <summary>
/// 将文件目录或文件加到treeview的节点上
/// </summary>
private void FileList(TreeNode node, DirectoryInfo d)
{
//获取所有文件夹
foreach(DirectoryInfo di in d.GetDirectories())
{
TreeNode tn_folder = new TreeNode ();
tn_folder.Text = di.Name;
tn_folder.Tag = di.FullName;
tn_folder.ImageIndex = 0;
node.Nodes.Add(tn_folder);
FileList(tn_folder, di);
}
//获取目录中所有文件
foreach(FileInfo f in d.GetFiles())
{
TreeNode tn_files = new TreeNode ();
tn_files.Text = f.Name;
tn_files.Tag = f.FullName;
tn_files.ImageIndex = 2;
node.Nodes.Add(tn_files);
}
}
我想实现,当我选择文件旁边的复选框时,能打印出选择的文件夹/文件完整路径,下面是代码,这个代码不能正长运行,当我选择跟目录时,能显示跟目录的完整路径,但是其他的不能显示,这是什么原因,请各位帮助!
foreach(TreeNode node in tv_Directory.Nodes)
{
if(node.Checked)
{
MessageBox.Show(node.Tag.ToString());
}
}
:
/// <summary>
/// 填充数型目录
/// </summary>
private void FillTree(string sCurPath)
{
DirectoryInfo directory;
tv_Directory.Nodes.Clear();
try
{
directory = new DirectoryInfo(sCurPath);
if (directory.Exists == true )
{
TreeNode newNode = new TreeNode(directory.FullName);
tv_Directory.Nodes.Add(newNode);
FileList(newNode, directory);
}
else
{
MessageBox.Show("您要浏览的目录不存在,请重新选择目录!");
}
}
catch( Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/// <summary>
/// 将文件目录或文件加到treeview的节点上
/// </summary>
private void FileList(TreeNode node, DirectoryInfo d)
{
//获取所有文件夹
foreach(DirectoryInfo di in d.GetDirectories())
{
TreeNode tn_folder = new TreeNode ();
tn_folder.Text = di.Name;
tn_folder.Tag = di.FullName;
tn_folder.ImageIndex = 0;
node.Nodes.Add(tn_folder);
FileList(tn_folder, di);
}
//获取目录中所有文件
foreach(FileInfo f in d.GetFiles())
{
TreeNode tn_files = new TreeNode ();
tn_files.Text = f.Name;
tn_files.Tag = f.FullName;
tn_files.ImageIndex = 2;
node.Nodes.Add(tn_files);
}
}
我想实现,当我选择文件旁边的复选框时,能打印出选择的文件夹/文件完整路径,下面是代码,这个代码不能正长运行,当我选择跟目录时,能显示跟目录的完整路径,但是其他的不能显示,这是什么原因,请各位帮助!
foreach(TreeNode node in tv_Directory.Nodes)
{
if(node.Checked)
{
MessageBox.Show(node.Tag.ToString());
}
}
...全文
相关推荐
treeview 局部刷新问题
标题“treeview 局部刷新问题”指出我们在处理treeview时遇到了需要局部更新的情况。
asp.net treeview checkbox 相关问题
当需要用户交互时,我们常常会添加Checkbox复选框到TreeView的各个节点上。本文将深入探讨如何处理与ASP.NET TreeView控件中的Checkbox相关的常见问题。
C# 解决双击TreeView表里checkbox本身Bug问题
该项目针对C#中TreeView控件在双击复选框时存在的交互问题进行修复。通过自定义事件处理机制,实现父节点与子节点复选状态的联动同步,并优化界面反馈逻辑。代码包含完整的窗体应用结构,涵盖资源管理、程
dotnet 7 已知问题 WPF 的 TreeView 开启虚拟化之后只显示首项.rar
**布局问题**:树视图的布局计算可能存在问题,导致 TreeView 无法正确计算需要显示的子节点。
[资源分享]解决Win10下IE浏览器树形控件treeview无法显示的问题
然而,有时用户可能会遇到在网页中使用树形控件TreeView时无法正常显示的问题。这可能是由于多种原因引起的,包括但不限于浏览器兼容性问题、JavaScript或CSS错误、ActiveX控件禁用等。


