/// <summary> /// 만들어진 폴더 목록을 기반으로 트리 노드를 작성합니다. /// </summary> private void createNodes() { for (; index < directory_list.Count - 1; index++) { FileIndexorNode _node = new FileIndexorNode(directory_list[index].Item1, directory_list[index].Item2, directory_list[index].Item3); if (directory_list[index + 1].Item1.Contains(directory_list[index].Item1)) { node.AddItem(_node); index += 1; createNodesRecursize(ref _node); break; } } }
private void createNodesRecursize(ref FileIndexorNode parent_node) { for (; index < directory_list.Count; index++) { if (directory_list[index].Item1.Contains(parent_node.Path)) { FileIndexorNode m = new FileIndexorNode(directory_list[index].Item1, directory_list[index].Item2, directory_list[index].Item3); parent_node.AddItem(m); if (index < directory_list.Count - 1 && directory_list[index + 1].Item1.Contains(directory_list[index].Item1)) { index++; createNodesRecursize(ref m); } parent_node.Size += m.Size; } else { index--; break; } } }