Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private int total_dirs;
- private int searched_until_now_dirs;
- private int max_percentage;
- private TreeNode directories_real_time;
- private string SummaryText;
- private TreeNode CreateDirectoryNode(string path, string name , int recursive_levl )
- {
- var directoryNode = new TreeNode(name);
- var directoryListing = GetDirectoryListing(path);
- var directories = directoryListing.Where(d => d.IsDirectory);
- var files = directoryListing.Where(d => !d.IsDirectory);
- total_dirs += directories.Count<FTPListDetail>();
- searched_until_now_dirs++;
- int percentage;
- foreach (var dir in directories)
- {
- directoryNode.Nodes.Add(CreateDirectoryNode(dir.FullPath, dir.Name, recursive_levl+1));
- if (recursive_levl == 1)
- {
- TreeNode temp_tn = (TreeNode)directoryNode.Clone();
- this.BeginInvoke(new MethodInvoker( delegate
- {
- UpdateList(temp_tn);
- }));
- }
- percentage = (searched_until_now_dirs * 100) / total_dirs;
- if (percentage > max_percentage)
- {
- SummaryText = String.Format("Searched dirs {0} / Total dirs {1}", searched_until_now_dirs, total_dirs);
- max_percentage = percentage;
- backgroundWorker1.ReportProgress(percentage, SummaryText);
- }
- }
- percentage = (searched_until_now_dirs * 100) / total_dirs;
- if (percentage > max_percentage)
- {
- SummaryText = String.Format("Searched dirs {0} / Total dirs {1}", searched_until_now_dirs, total_dirs);
- max_percentage = percentage;
- backgroundWorker1.ReportProgress(percentage, SummaryText);
- }
- foreach (var file in files)
- {
- TreeNode file_tree_node = new TreeNode(file.Name);
- file_tree_node.Tag = "file";
- directoryNode.Nodes.Add(file_tree_node);
- numberOfFiles.Add(file.FullPath);
- }
- return directoryNode;
- }
- private void menuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
- {
- if (e.ClickedItem.Text == "Delete")
- {
- if (treeView1.SelectedNode.Tag != null)
- {
- string s = (string)treeView1.SelectedNode.Tag; // this is casting
- string s1 = treeView1.SelectedNode.Tag as string;
- if (s == "file")
- {
- DeleteFile(treeView1.SelectedNode.FullPath);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement