-
Jan 23rd, 2018, 07:02 AM
#1
Thread Starter
Fanatic Member
File manager - refresh Treeview after FileSystem changes
Hi,
I have a file manager with Listview and Treeview to show directory structure. When I do some FileSystem changes via Listview, I want to update Treeview too. Currently what I do is just re-populating Treeview after FileSystem changes are done, but that resets my Treeview nodes.
Does anybody have an idea on how I could force update of Treeview without re-populating It - same as in Windows Explorer ?...So when you rename folder and folder is visible in treeview - rename it. When folder deleted and is visible in Treeview, delete It etc...
Some code sample would be highly appreciated, thanks in advance !!
-
Jan 23rd, 2018, 08:25 AM
#2
Thread Starter
Fanatic Member
Re: File manager - refresh Treeview after FileSystem changes
This is how I started innitially, maybe someone can help me from here on. Basically, I trap all FileSystem changes via FileSystemWatcher and by that I could refresh Treeview:
Code:
private void RefreshTreeview(object source,System.IO.FileSystemEventArgs e)
{
switch (e.ChangeType)
{
case WatcherChangeTypes.Created:
break;
case WatcherChangeTypes.Deleted:
TreeNode deletenode = SearchTag(Treeview1, updating.FirstOrDefault());
if (deletenode != null)
{
deletenode.Remove();
}
break;
case WatcherChangeTypes.Changed:
break;
case WatcherChangeTypes.Renamed:
TreeNode renamenode = SearchTag(Treeview1,updating.FirstOrDefault());
if (renamenode != null)
{
renamenode.Tag = updating.ElementAt(1);
renamenode.Text = updating.ElementAt(2);
}
break;
default:
break;
}
}
This part of code successfully renames or deletes node on treeview after I do any FileSystem changes from my Listview. As you see, I store string[] for new/old tag & text. However, I'm missing case for "changed" & "created", and don't know how to start....
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|