public override void EnterPane() { if (IsStartupPane) { using (SynchronizeFoldersProgressForm dlg = new SynchronizeFoldersProgressForm()) { // this performs the actual folder structure synchronization dlg.ShowDialog(FindForm()); } if (!_checkStatusUpdated) { Core.ResourceAP.RunUniqueJob( new MethodInvoker(Folder.IgnoreDeletedItemsIfNoIgnoredFolders)); UpdateCheckStatus(_treeView.Nodes); foreach (TreeNode node in _treeView.Nodes) { _treeView.ForceCreateChildren(node); node.Expand(); } _checkStatusUpdated = true; } } else { _chkShowExcludedFolders.Visible = true; } }
[Test] public void ForceCreateChildren() { IResource folder1 = CreateResource("Folder", "FirstName", "B", _root); IResource folder2 = CreateResource("Folder", "FirstName", "C", folder1); IResource folder3 = CreateResource("Folder", "FirstName", "C", folder2); _treeView.RootResource = _root; TreeNode folder1Node = _treeView.Nodes [0]; Assert.AreEqual(0, folder1Node.Nodes.Count); _treeView.ForceCreateChildren(folder1Node); Assert.AreEqual(1, folder1Node.Nodes.Count); TreeNode folder2Node = folder1Node.Nodes [0]; Assert.AreEqual(1, folder2Node.Nodes.Count); }