0

私のドライブの1つに、exフォルダ構造があります

d:\

123
    Code
        testfile.cs
    Database
        Backup.mdb
    Requirements
        Sprint1.xls

234
   20132305
        20132205
            20132105 
   Database  

ツリービューに次のように表示したい

d:\

123

    Code
        testfile.cs
    Database
        Backup.mdb 

234
   Database  

つまり、「コード」と「データベース」のフォルダーとサブフォルダーのみを表示します

ツリービューをロードするコードは次のとおりです

folderLst = {"123","234"}

   private void PopulateTreeView()
    {
        TreeNode rootNode;
        foreach (string f in folderLst)
        {

            DirectoryInfo info = new DirectoryInfo(@"d:\");
            if (info.Exists)
            {
                rootNode = new TreeNode(info.Name);
                rootNode.Tag = info;
                GetDirectories(info.GetDirectories(), rootNode);
                treeView1.Nodes.Add(rootNode);
            }
        }
    }


  private void GetDirectories(DirectoryInfo[] subDirs, TreeNode nodeToAddTo)
    {
        TreeNode aNode;
        DirectoryInfo[] subSubDirs;
        foreach (DirectoryInfo subDir in subDirs)
        {
            aNode = new TreeNode(subDir.Name, 0, 0);
            aNode.Tag = subDir;

            subSubDirs = subDir.GetDirectories();
            if (subSubDirs.Length != 0)
            {
                GetDirectories(subSubDirs, aNode);
            }

            nodeToAddTo.Nodes.Add(aNode);
        }
    }

どんな助けでも大歓迎です

4

1 に答える 1