public static void Main(string[] args) { PhoneBook phoneBook = new PhoneBook(); while (true) { Menu mainMenu = new Menu() { Text = "-= UI PhoneBook =-", Options = new List <string>() { "Отобразить контакты", "Создать контакт", "Выход" } }; int choose = MenuUi.DisplayMenu(mainMenu); Console.Clear(); if (choose == 0) { phoneBook.Display(); } else if (choose == 1) { phoneBook.AddNumber(); } else if (choose == 2) { break; } } }
private void Edit(Contact contact) { Menu editMenu = new Menu() { Text = "Выбирете что вы хотите изменить", Options = new List <string>() { "Имя", "Фамилия", "Отчество", "Номер", "Страна", "Дата рождения", "Организация", "Должность", "Заметки", } }; int ch = MenuUi.DisplayMenu(editMenu, true); if (ch == 0) { Console.WriteLine("Введите Имя: "); contact.Name = Console.ReadLine(); } else if (ch == 1) { Console.WriteLine("Введите Фамилию: "); contact.SubName = Console.ReadLine(); } else if (ch == 2) { Console.WriteLine("Введите Отчество или '-' в случае отсутствия: "); contact.SubSubName = Console.ReadLine(); } else if (ch == 3) { Console.WriteLine("Введите номер телефона: "); contact.Number = long.Parse(Console.ReadLine() ?? throw new InvalidOperationException()); } else if (ch == 4) { foreach (Country country in Enum.GetValues(typeof(Country))) { Console.WriteLine(country); } Console.WriteLine("Введите Страну: "); contact.Country = Enum.Parse <Country>(Console.ReadLine()); } else if (ch == 5) { Console.WriteLine("Введите Дату рождения в формате Дата.Месяц.Год: "); contact.BDate = DateTime.Parse(Console.ReadLine()); } else if (ch == 6) { Console.WriteLine("Введите организицию: "); contact.Organisation = Console.ReadLine(); } else if (ch == 7) { Console.WriteLine("Введите должность: "); contact.Position = Console.ReadLine(); } else if (ch == 8) { Console.WriteLine("Заметки: "); contact.Details = Console.ReadLine(); } else if (ch == 8) { return; } }
public void Display() { if (contacts.Count != 0) { Menu contactsMenu = new Menu() { Text = "Выберите контакт", Options = GetContactsList() }; int contactsChoose = MenuUi.DisplayMenu(contactsMenu, true); if (contactsChoose == contacts.Count) // В случае если пользователь выбрал назад { return; } Contact selectedContact = contacts[contactsChoose]; while (true) // Цикл выбора контакта { Menu contactMenu = new Menu() { Text = $"ИФО: {selectedContact.Name} {selectedContact.SubName} {selectedContact.SubSubName}\n" + $"Номер: {selectedContact.Number}\n" + $"Дата рождения: {selectedContact.BDate.Day}:{selectedContact.BDate.Month}:{selectedContact.BDate.Year}\n" + $"Страна: {selectedContact.Country}\n" + $"Место работы: {selectedContact.Organisation}\n" + $"Должность: {selectedContact.Position}\n" + $"Заметки: {selectedContact.Details}", Options = new List <string>() { "Редактировать", "Удалить", "В главное меню" } }; int contactChoose = MenuUi.DisplayMenu(contactMenu); if (contactChoose == 0) { Edit(selectedContact); } else if (contactChoose == 1) { Remove(selectedContact); break; } else if (contactChoose == 2) { Console.Clear(); return; } Console.Clear(); } } else { Menu emptyContactsMunu = new Menu() { Text = "Список контактов пуст", Options = new List <string>() { "Создать контакт", "Вернуться в главное меню" } }; int choose = MenuUi.DisplayMenu(emptyContactsMunu); if (choose == 0) { AddNumber(); } else if (choose == 1) { return; } } }