override public void Show() { for (int i = 0; i < Children.Count; i++) { WindowSize.Initialization(); if (!Children[i].ThisDisk) { if (Children[i].CoordinateCurrentDyrectory >= WindowSize.MaximumHeight) { WindowSize.MaximumHeight++; WindowSize.Minimum++; } if (Children[i].CoordinateCurrentDyrectory <= WindowSize.Minimum) { WindowSize.MaximumHeight--; WindowSize.Minimum--; } } if (Children[i].Coordinate >= WindowSize.Minimum && Children[i].Coordinate < WindowSize.MaximumHeight) { int @switch = 0; for (int j = 0; j < Children[i].IndentationsLength; j++) { if (@switch == 0) { Console.Write(' '); @switch++; } else { if (!Children[i].ThisDisk) { Console.Write((char)0x2502); } @switch--; } } if (i < Children.Count - 1) { if (i < Children.Count - 1 && Children[i] is Folder && Children[i + 1] is _File) { Console.Write((char)0x2514); } else if (Children[i] is Folder) { Console.Write((char)0x251C); } else { Console.Write((char)0x2502); Console.Write(" "); } } else { if (Children[i] is Folder) { Console.Write((char)0x2514); } else { Console.Write((char)0x2502); Console.Write(" "); } } Children[i].ShowName(); } Children[i].Show(); } }