internal WatchingTreeItem(string name, WatchingTreeItem parent, ItemType type) { Name = name; Parent = parent; Type = type; Children = new TreeItemList <ItemWatchingOptions, WatchingTreeItem>(); }
private void FillTree(TreeItemList tree, string directory, int level) { try { foreach (var dir in Directory.EnumerateDirectories(directory)) { var ti = new TreeItem { Data = new DirectoryDataObject { Caption = Path.GetFileName(dir), Level = level }, ToolTip = dir, IsEnabled = Path.GetFileName(dir) != "obj" }; tree.Add(ti); FillTree(ti.Items, dir, level + 1); } foreach (var file in Directory.EnumerateFiles(directory)) { var ti = new TreeItem { Data = new FileDataObject { Caption = Path.GetFileName(file), Level = level }, ToolTip = file }; ti.IsSelectedChanged += Ti_IsSelectedChanged; tree.Add(ti); } } catch (Exception) { } }
private TreeItem FindCaption(string caption, TreeItemList list) { foreach (var item in list) { if (((DataObjectBase)item.Data).Caption == caption) { return(item); } var subitem = FindCaption(caption, item.Items); if (subitem != null) { return(subitem); } } return(null); }