private void DeleteNode(TreeNode root) { TreeNodes.Remove(root); root.LeftChild = null; root.RightChild = null; root.Parent = null; }
public override void Update() { Folder.Update(); List <Data.Item> currentItems = new List <Data.Item>(); foreach (Data.Item item in Folder.Items.Values) { currentItems.Add(item); } List <NavigatePanelNode> removeNodes = new List <NavigatePanelNode>(); foreach (NavigatePanelNode node in TreeNodes) { if (currentItems.Contains(node.Item)) { currentItems.Remove(node.Item); } else { removeNodes.Add(node); } } foreach (NavigatePanelNode nodes in removeNodes) { TreeNodes.Remove(nodes); } foreach (Data.Item item in currentItems) { if (item == null) { continue; } TreeNodes.Add(item.CreateNode()); } }
public override void Update() { TclFile.Update(); List <string> currentDataIds = new List <string>(); foreach (string key in TclFile.Items.Keys) { currentDataIds.Add(key); } List <codeEditor.NavigatePanel.NavigatePanelNode> removeNodes = new List <codeEditor.NavigatePanel.NavigatePanelNode>(); //foreach (codeEditor.NavigatePanel.NavigatePanelNode node in TreeNodes) //{ // if (currentDataIds.Contains(node.ID)) // { // currentDataIds.Remove(node.ID); // } // else // { // removeNodes.Add(node); // } //} foreach (codeEditor.NavigatePanel.NavigatePanelNode nodes in removeNodes) { TreeNodes.Remove(nodes); } //foreach (string id in currentDataIds) //{ // codeEditor.Data.Item item = Project.GetRegisterdItem(id); // if (item == null) continue; // TreeNodes.Add(item.CreateNode()); //} }