过程
添加一个TreeView控件:
窗体加载的时候把文件添加到树;
View Code
1 private void Form1_Load(object sender, EventArgs e) 2 { 3 CreateParentNode(); 4 } 5 6 void CreateParentNode() 7 { 8 tvType.Nodes.Clear(); 9 string path = "资料"; 10 TreeNode parent = new TreeNode(); 11 parent.Text = path; 12 tvType.Nodes.Add(parent); 13 CreateChildNode(path, parent); 14 } 15 16 void CreateChildNode(string path,TreeNode parent) 17 { 18 DirectoryInfo di = new DirectoryInfo(path); 19 DirectoryInfo[] dis = di.GetDirectories(); 20 foreach (DirectoryInfo item in dis) 21 { 22 TreeNode child = new TreeNode(); 23 child.Text = item.Name; 24 child.Tag = item.FullName; 25 parent.Nodes.Add(child); 26 CreateFileNode(item.FullName,child); 27 } 28 } 29 void CreateFileNode(string path, TreeNode child) 30 { 31 DirectoryInfo di = new DirectoryInfo(path); 32 FileInfo[] fis = di.GetFiles(); 33 foreach (FileInfo item in fis) 34 { 35 TreeNode tn = new TreeNode(); 36 tn.Text = item.Name; 37 tn.Tag = item.FullName; 38 child.Nodes.Add(tn); 39 } 40 }
选中文件的时候把文件的内容加到文本框上
View Code
private void tvType_AfterSelect(object sender, TreeViewEventArgs e) { if (e.Node.Level == 2) { if (!e.Node.Text.ToString().Contains(".txt")) return; txtContens.Text = File.ReadAllText(e.Node.Tag.ToString(), Encoding.GetEncoding("gb2312")); txtTitle.Text = Path.GetFileNameWithoutExtension(e.Node.Text); } }
添加一个保存按钮
View Code
private void btnSave_Click(object sender, EventArgs e) { if (tvType.SelectedNode == null) return; if (tvType.SelectedNode.Tag == null) return; string path = tvType.SelectedNode.Tag.ToString(); if (path.LastIndexOf(".txt") > 0) { string content = txtContens.Text; File.WriteAllText(path,content,Encoding.GetEncoding("gb2312")); MessageBox.Show("保存成功"); CreateParentNode(); } }