private void UCIndexCreator_Load(object sender, EventArgs e) { LoadTreeView(); TheWatcher = new FileWatcher(); //Apply previous treeview state (expand and checked) TreeViewState tvState = TreeViewExtensions.DeserializeTreeViewState(); if (tvState != null) { treeViewFolders.BeginUpdate(); // Once it is populated, we need to restore expanded nodes treeViewFolders.Nodes.SetExpansionState(tvState.ExpandedList); treeViewFolders.Nodes.SetCheckedState(tvState.CheckedList); //Integrate filewatcher to get notification on file modifications based on previous folder selection TheWatcher.RefreshWatchers(); TheWatcher.OnFileChange += Fw_OnFileChange; TheWatcher.ConfigureFileWatcher(tvState.CheckedList); treeViewFolders.EndUpdate(); } GetCheckedNodes(treeViewFolders.Nodes); }