遍历文件夹绑定文件到TreeView控件

  这里要实行的是一个小说阅读器的效果,主要是体验递归遍历文件,和TreeView控件的数据绑定效果。


        //递归遍历文件的方法



        static void getAllFiles(string strPath, TreeNode tn) 

        {

            //获取目录下的文件和文件夹

            string [] files=Directory.GetFiles(strPath,"*.txt");

            string [] dir=Directory.GetDirectories(strPath);



            //遍历文件,添加到节点

            for (int i = 0; i < files.Length; i++) 

            {

                TreeNode tn2= tn.Nodes.Add(Path.GetFileNameWithoutExtension(files[i]));

                tn2.Tag = files[i];

            }

            //遍历文件夹,递归

            for (int i = 0; i < dir.Length; i++) 

            {

                TreeNode tn3 = tn.Nodes.Add(Path.GetFileName(dir[i]));

                getAllFiles(dir[i],tn3);

            }

        }

重新加载的时候,注意要清楚之前节点上面的数据。

            treeView1.Nodes.Clear();//清除节点


  TreeNode tn = treeView1.Nodes.Add(Path.GetFileName(strPath));
getAllFiles(strPath, tn);

 添加TreeView控件的事件,实现文本读取

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)

        {

            if (e.Node.Tag != null)

            {

                string path = e.Node.Tag.ToString();



                textBox1.Text = File.ReadAllText(path, Encoding.Default);

            }

        }

 

 

 

你可能感兴趣的:(treeview)