Em um dos meus aplicativos recentes, precisei alterar as cores de primeiro plano e de segundo plano do console à partir de diferentes cenários para pessoas com certa deficiência visual.
A classe Console no C# com .Net Core representa o console do sistema. Podemos conseguir isso definindo as propriedades de Console incluindo suas cores, tamanho de fontes etc.. O enum ConsoleColor representa um valor da cor do console. Tenha em mente que o ConsoleColor suporta apenas um número limitado de cores.
O trecho de código a seguir retorna o plano de fundo atual e as cores de primeiro plano do console, também o altera e no final você pode ver como resetá-lo:
//obter ConsoleColor background = Console.BackgroundColor; ConsoleColor foreground = Console.ForegroundColor; //definir Console.ForegroundColor = ConsoleColor.White; Console.BackgroundColor = ConsoleColor.Red; //resetar Console.ResetColor();
O código abaixo é o código completo que percorre todas as cores do Console e altera as cores de fundo e de primeiro plano do console:
using System; class ConsoleColorsClass { static void Main(string[] args) { // loop console colors foreach(ConsoleColor color in Enum.GetValues(typeof(ConsoleColor))) { Console.ForegroundColor = color; Console.WriteLine($ "Foreground color set to {color}"); } Console.WriteLine("====================================="); Console.ForegroundColor = ConsoleColor.White; // loop background colors foreach(ConsoleColor color in Enum.GetValues(typeof(ConsoleColor))) { Console.BackgroundColor = color; Console.WriteLine($ "Background color set to {color}"); } Console.WriteLine("====================================="); // resetar cores Console.ResetColor(); Console.ReadKey(); } }
A representação do console seria esta:
Espero que tenham gostado! Um abraço!
Fonte: CCorner