Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using System.IO;
- namespace OSTP
- {
- public partial class User1FileExplorer : Form
- {
- public User1FileExplorer()
- {
- InitializeComponent();
- PopulateTreeView();
- this.treeView1.NodeMouseClick +=
- new TreeNodeMouseClickEventHandler(this.treeView1_NodeMouseClick);
- }
- private void User1FileExplorer_Load(object sender, EventArgs e)
- {
- }
- private void PopulateTreeView()
- {
- TreeNode rootNode;
- DirectoryInfo info = new DirectoryInfo(@"C:\Users\Oliver\Documents\.OSTP\User1\Files\Documents");
- 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;
- aNode.ImageKey = "folder";
- subSubDirs = subDir.GetDirectories();
- if (subSubDirs.Length != 0)
- {
- GetDirectories(subSubDirs, aNode);
- }
- nodeToAddTo.Nodes.Add(aNode);
- }
- }
- private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
- {
- TreeNode newSelected = e.Node;
- listView1.Items.Clear();
- DirectoryInfo nodeDirInfo = (DirectoryInfo)newSelected.Tag;
- ListViewItem.ListViewSubItem[] subItems;
- ListViewItem item = null;
- foreach (DirectoryInfo dir in nodeDirInfo.GetDirectories())
- {
- item = new ListViewItem(dir.Name, 0);
- subItems = new ListViewItem.ListViewSubItem[]
- {new ListViewItem.ListViewSubItem(item, "Directory"),
- new ListViewItem.ListViewSubItem(item,
- dir.LastAccessTime.ToShortDateString())};
- item.SubItems.AddRange(subItems);
- listView1.Items.Add(item);
- }
- foreach (FileInfo file in nodeDirInfo.GetFiles())
- {
- item = new ListViewItem(file.Name, 1);
- subItems = new ListViewItem.ListViewSubItem[]
- { new ListViewItem.ListViewSubItem(item, "File"),
- new ListViewItem.ListViewSubItem(item,
- file.LastAccessTime.ToShortDateString())};
- item.SubItems.AddRange(subItems);
- listView1.Items.Add(item);
- }
- listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
- }
- private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
- {
- ListViewItem lvItem = null;
- ListViewHitTestInfo lvHti = listView1.HitTest(e.Location);
- if (lvHti.Item != null) lvItem = lvHti.Item;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment