static void ViewTaskList() { int currentPage = 0; while ((currentPage < myToDoList.Pages.Count - 1) && myToDoList.Pages[currentPage].IsFull()) { currentPage++; } while (true) { var tasks = myToDoList.Pages[currentPage].Tasks; int taskNumber; Console.Clear(); Console.WriteLine($"Showing {tasks.Count} task(s) out of {myToDoList.TotalNumberOfTasks}: \n"); myToDoList.DisplayPage(currentPage); Console.WriteLine($"\nPage {currentPage + 1} out of {myToDoList.Pages.Count}:"); string deleteOption = (currentPage == 0) && (myToDoList.Pages[currentPage].IsFull()) ? "\n\td - delete page" : ""; Console.Write($"\nOptions:\n\t# - select task\n\t> - go to next page\n\t< - go to previous page{deleteOption}\n\t0 - add new task(s)\n\t - blank to go to main menu\n\nChoice: "); string input = Console.ReadLine().ToLower(); if (int.TryParse(input, out taskNumber) && ((taskNumber > 0 && taskNumber <= (tasks.Count)))) { if (!tasks[taskNumber - 1].isCrossedOut) { Console.WriteLine($"\nYou selected Task #{taskNumber} \"{tasks[taskNumber - 1].Name}\":"); Console.Write($"Are you done?\n\ty - Cross-out\n\tn - Re-enter\n\t - blank to Abort\n\nChoice: "); //Console.Write($"Enter \"Y\" to Cross-out, \"N\" to Re-enter, or Blank to Abort: "); input = Console.ReadLine().ToLower(); if (input == "n") { tasks[taskNumber - 1].CrossOut(); myToDoList.addNewTask(tasks[taskNumber - 1].Name); } else if (input == "y") { tasks[taskNumber - 1].CrossOut(); } } } else if (input == ">") { currentPage++; if (currentPage >= myToDoList.Pages.Count) { currentPage = 0; } } else if (input == "<") { currentPage--; if (currentPage < 0) { currentPage = myToDoList.Pages.Count - 1; } } else if (input == "d") { if (currentPage == 0) { Console.Write($"Enter \"y\" to permanentely DELETE page: "); //Console.Write($"\nOptions:\n\tY - permanentely Delete\n\t - bland to Abort\n\nChoice: "); input = Console.ReadLine().ToLower(); if ((input == "y") && (myToDoList.Pages[currentPage].IsFull())) { myToDoList.RemovePage(currentPage); if (!myToDoList.Pages.Any()) { break; } } } } else if (input == "0") { AddTasks(); currentPage = myToDoList.Pages.Count - 1; } else if (input == "") { break; } } }