bool ShouldCreateItem(ShellItem folder) { FilterItemEventArgs e = new FilterItemEventArgs(folder); ShellItem myComputer = new ShellItem(Environment.SpecialFolder.MyComputer); e.Include = false; if (ShellItem.Desktop.IsImmediateParentOf(folder) || m_Computer.IsImmediateParentOf(folder)) { e.Include = folder.IsFileSystemAncestor; } else if ((folder == m_SelectedFolder) || folder.IsParentOf(m_SelectedFolder)) { e.Include = true; } if (FilterItem != null) { FilterItem(this, e); } return(e.Include); }
void SelectItem(TreeNode node, ShellItem value) { CreateChildren(node); foreach (TreeNode child in node.Nodes) { ShellItem folder = (ShellItem)child.Tag; if (folder == value) { m_TreeView.SelectedNode = child; child.EnsureVisible(); child.Expand(); return; } else if (folder.IsParentOf(value)) { SelectItem(child, value); return; } } }
private bool ShouldCreateItem(ShellItem folder) { var e = new FilterItemEventArgs(folder); // ReSharper disable once UnusedVariable var myComputer = new ShellItem(Environment.SpecialFolder.MyComputer); e.Include = false; if (ShellItem.Desktop.IsImmediateParentOf(folder) || _mComputer.IsImmediateParentOf(folder)) { e.Include = folder.IsFileSystemAncestor; } else if ((folder == _mSelectedFolder) || folder.IsParentOf(_mSelectedFolder)) { e.Include = true; } FilterItem?.Invoke(this, e); return(e.Include); }
bool ShouldCreateChildren(ShellItem folder) { return((folder == m_Computer) || (folder == ShellItem.Desktop) || folder.IsParentOf(m_SelectedFolder)); }