热心人救救小弟把 怎么样才能把遍历硬盘中的目录然后生成书,并且是和目录一样,要产生嵌套的树结构,绑定到TREEVIEW中能不能给出代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 以下是一个示例代码,你可进行参考将系统上的所有目录填充到树视图中 /// <summary>/// 填充目录文件到树视图/// 1.获取系统上的所有逻辑驱动器/// 2.在每个逻辑驱动器上获取驱动器顶级目录列表,并遍历子目录///注:本程序参考《C#程序设计》/// </summary>/// <param name="tvw"></param>/// <param name="isSource"></param>private void FillDirectoryTree(TreeView tvw,bool isSource){tvw.Nodes.Clear();//获取系统上的所有逻辑驱动器string[] strDrives=Environment.GetLogicalDrives();foreach(string rootDirectoryName in strDrives){//if(rootDirectoryName !=@"E:\")// continue;try{//获取驱动器顶级目录列表DirectoryInfo dir=new DirectoryInfo(rootDirectoryName);dir.GetDirectories();TreeNode ndRoot=new TreeNode(rootDirectoryName);tvw.Nodes.Add(ndRoot);if(isSource){GetSubDirectoryNodes(ndRoot,ndRoot.Text,true);}else{GetSubDirectoryNodes(ndRoot,ndRoot.Text,false);}}catch(Exception e){MessageBox.Show(e.Message);}}}//遍历子目录private void GetSubDirectoryNodes(TreeNode parentNode,string fullName,bool getFileNames){DirectoryInfo dir = new DirectoryInfo(fullName);DirectoryInfo[] dirSubs=dir.GetDirectories();//为每一个子目录添加一个子接点foreach(DirectoryInfo dirSub in dirSubs){//不显示隐藏文件夹if((dirSub.Attributes&FileAttributes.Hidden)!=0){continue;}TreeNode subNode=new TreeNode(dirSub.Name);parentNode.Nodes.Add(subNode);//递归调用GetSubDirectoryNodesGetSubDirectoryNodes(subNode,dirSub.FullName,getFileNames);}//获取目录中的文件if(getFileNames){FileInfo[] files=dir.GetFiles();foreach(FileInfo file in files){TreeNode fileNode=new TreeNode(file.Name);parentNode.Nodes.Add(fileNode);}}} ajax控件静态化之后的问题 用js怎么写,查找table中的button,id="btn1" 关于前台和后台 网站发布时候的一个问题!关于路径~请提示下。 客户的邮件系统比较慢,如何在发送邮件后就返回,避免等待。。。 dropdownlist控件的数据绑定问题 无法显示控件 请教一个简单的DataGrid分页问题 分数不多了,asp.net网上调查 20分求 调用js函数问题,很简单,本人不太熟悉js 怎样用asp.net 实现css 滤镜 不是高手请不要进来
/// 填充目录文件到树视图
/// 1.获取系统上的所有逻辑驱动器
/// 2.在每个逻辑驱动器上获取驱动器顶级目录列表,并遍历子目录
///注:本程序参考《C#程序设计》
/// </summary>
/// <param name="tvw"></param>
/// <param name="isSource"></param>
private void FillDirectoryTree(TreeView tvw,bool isSource)
{
tvw.Nodes.Clear();//获取系统上的所有逻辑驱动器
string[] strDrives=Environment.GetLogicalDrives();foreach(string rootDirectoryName in strDrives)
{
//if(rootDirectoryName !=@"E:\")
// continue;
try
{
//获取驱动器顶级目录列表
DirectoryInfo dir=new DirectoryInfo(rootDirectoryName);
dir.GetDirectories();TreeNode ndRoot=new TreeNode(rootDirectoryName);
tvw.Nodes.Add(ndRoot);
if(isSource)
{
GetSubDirectoryNodes(ndRoot,ndRoot.Text,true);
}
else
{
GetSubDirectoryNodes(ndRoot,ndRoot.Text,false);
}
}
catch(Exception e)
{
MessageBox.Show(e.Message);
}
}
}//遍历子目录
private void GetSubDirectoryNodes(TreeNode parentNode,string fullName,bool getFileNames)
{
DirectoryInfo dir = new DirectoryInfo(fullName);
DirectoryInfo[] dirSubs=dir.GetDirectories();//为每一个子目录添加一个子接点
foreach(DirectoryInfo dirSub in dirSubs)
{
//不显示隐藏文件夹
if((dirSub.Attributes&FileAttributes.Hidden)!=0)
{
continue;
}
TreeNode subNode=new TreeNode(dirSub.Name);
parentNode.Nodes.Add(subNode);//递归调用GetSubDirectoryNodes
GetSubDirectoryNodes(subNode,dirSub.FullName,getFileNames);
}
//获取目录中的文件
if(getFileNames)
{
FileInfo[] files=dir.GetFiles();
foreach(FileInfo file in files)
{
TreeNode fileNode=new TreeNode(file.Name);
parentNode.Nodes.Add(fileNode);
}
}
}