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