如何在C#中更改控制台窗口的完整背景颜色?

在C#中,控制台具有可用于更改控制台背景颜色和控制台前景(文本)颜色的属性。

Console.BackgroundColor // the background color Console.ForegroundColor // the foreground/text color 

问题是背景颜色仅适用于写入文本的位置,而不适用于自由空间。

 Console.BackgroundColor = ConsoleColor.White; // background color is white Console.ForegroundColor = ConsoleColor.Blue; // text color is blue 

现在,使用上面的代码,它确实将文本变为蓝色,但它只将文本的背景变为白色,而不是整个控制台窗口的背景。

这是我的意思的一个例子: 背景仅涵盖文本的背景,而不是整个控制台窗口的背景

如您所见,白色背景仅显示在文本后面,并不会更改整个控制台窗口的颜色。

如何更改整个控制台窗口的颜色?

您需要在设置颜色后清除控制台窗口,但在编写文本之前…

 Console.ForegroundColor = ConsoleColor.Red; Console.BackgroundColor = ConsoleColor.Green; Console.Clear(); Console.WriteLine("Hello World"); Console.ReadLine(); 

正在运行的控制台控制颜色。 您基本上只是更改应用程序的颜色属性的输出。

更改整体背景颜色很简单:单击“C:\”图标选择“属性”,然后选择“颜色”选项卡。

现在,如果您想以编程方式执行此操作,则需要启动自己的窗口:

 CMD /T:F[n color index] 

颜色价值

黑色0蓝色1绿色2水色3红色4紫色5绿色黄色6浅灰色7灰色8浅蓝色9浅绿色A浅水色B浅红色C浅紫色D浅黄色E亮白色F

或者,如果您使用的是PowerShell,请参阅此TechNet文章: http : //technet.microsoft.com/en-us/library/ee156814.aspx

这将适用于您在第一次打开支架后放置它

 { system("cls"); system("color f3"); } 

你可以用数字改变颜色,最多7个我认为例子f1,f2,f3,f4 ……