首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

winform 一层一层的打开文件夹如何打开啊打开文件

2013-10-19 
winform 一层一层的打开文件夹怎么打开啊!打开文件像打开我的电脑一样,一层一层打开文件夹,直到里面全是文

winform 一层一层的打开文件夹怎么打开啊!打开文件
像打开我的电脑一样,一层一层打开文件夹,直到里面全是文件,还可以打开文件 winform 文件夹 打开文件
[解决办法]
ListView
TreeView
两个控件

http://bbs.csdn.net/topics/380239317
[解决办法]

引用:
        /// <summary>
        /// 数据加载
        /// </summary>
        private void LoadData()
        {
            try
            {
                treeList_File.Nodes.Clear();
                string indexpagevcode = System.Environment.CurrentDirectory + "\\公司库";
                TreeListNode parentNode = treeList_File.AppendNode(new string[] { "公司库", "", indexpagevcode }, 0);
                             GetAllDirList(indexpagevcode, parentNode);
                this.treeList_File.SelectImageList = this.imageList1;
            }
            catch (Exception e)
            {
                Program.MsgBoxError(e);
            }
        }
        /// <summary>
        /// 数据绑定
        /// </summary>
        /// <param name="strBaseDir">地址</param>
        /// <param name="parentNode">根节点</param>
        void GetAllDirList(string strBaseDir, TreeListNode parentNode)
        {
            
            //Process.Start("net.exe"," use  \\server\share password");
            //Process.StartInfo.CreateNoWindow = true;
            //Process.StartInfo.UseShellExecute = false;


           
            DirectoryInfo di = new DirectoryInfo(strBaseDir);
            DirectoryInfo[] diA = di.GetDirectories();
            if (ParentID == 0)
            {
                FileInfo[] fis2 = di.GetFiles();   //有关目录下的文件   
                for (int i2 = 0; i2 < fis2.Length; i2++)
                {
                    treeList_File.AppendNode(new string[] { fis2[i2].Name, ((System.IO.FileSystemInfo)(fis2[i2])).LastWriteTime.ToString(), fis2[i2].FullName }, parentNode.Id, 2, 2, 2);
                }
            }
            for (int i = 0; i < diA.Length; i++)
            {
                ParentID++;
                TreeListNode parentNode2 = treeList_File.AppendNode(new string[] { diA[i].Name, ((System.IO.FileSystemInfo)(diA[i])).LastWriteTime.ToString(), diA[i].FullName }, parentNode);



                DirectoryInfo di1 = new DirectoryInfo(diA[i].FullName);
                DirectoryInfo[] diA1 = di1.GetDirectories();
                FileInfo[] fis1 = di1.GetFiles();   //有关目录下的文件   
                for (int ii = 0; ii < fis1.Length; ii++)
                {
                    treeList_File.AppendNode(new string[] { fis1[ii].Name, ((System.IO.FileSystemInfo)(fis1[ii])).LastWriteTime.ToString(), fis1[ii].FullName }, parentNode2.Id, 2, 2, 2);
                }
                GetAllDirList(diA[i].FullName, parentNode2);
                //注意:递归了。逻辑思维正常的人应该能反应过来 

            }
        }


+1遍历也可以,遍历文件夹

热点排行