/// <summary> /// Змінює фон і текст пункту меню /// </summary> /// <param name="cursorTop">Позиція потрібного пункту меню від верхнього краю вікна</param> /// <param name="foreground">Колір тексту</param> /// <param name="background">Колір фону</param> private void ChangeRowColors(int cursorTop, ConsoleColor foreground, ConsoleColor background) { if (cursorTop >= min && cursorTop <= max) { ChangeColors(background, foreground); ViewComponent.ClearString(cursorTop); Console.WriteLine(menu[cursorTop - min]); } }
/// <summary> /// Викликає меню /// </summary> /// <param name="msg">Повідомлення, яке виводиться перед пунктами меню</param> /// <returns>Вибраний пункт меню</returns> protected int DoMenuAction(string msg) { ViewComponent.ClearWithotFirst(); ChangeColors(Background, Font); Console.WriteLine(StringConstants.MenuNavigation); Console.WriteLine(msg); currentPos = Console.CursorTop; min = currentPos; max = menu.Length + min - 1; PrintMenu(); SetActiveMenuItem(); ChangeColors(Background, Font); ViewComponent.ClearWithotFirst(); return(Choice); }