我有一个静态方法,如果它在测试环境下运行,我想用它来更改Console.BackgroundColor。当颜色改变后我在线上断裂时仍然设置为黑色。
public static void LogError(string err)
{
if (IsRunningFromMspec)
{
Console.BackgroundColor = ConsoleColor.DarkRed;
Console.WriteLine(" &&&" + err);
}
else if (MyTracer.MyLevelSwitch.TraceError && !string.IsNullOrEmpty(err))
{
Trace.TraceError(" &&& - " + err);
}
}
答案 0 :(得分:5)
Console.BackgroundColor
不会更改整个控制台窗口的背景颜色。它只会在设置该颜色后更改所写文本的背景颜色。
因此,您的输出src/main/resources/foo/bar/Extension/config.jelly
现在将使用Console.WriteLine(" &&&" + err);
背景编写:
不幸的是,我现在还不知道以编程方式更改整个控制台窗口颜色的方法。
正如Ian H.在评论中指出的那样,将整个控制台窗口的背景设置为所需的颜色调用
DarkRed
更改颜色后。但是,这当然会删除您之前写的所有内容,这些内容可能不是您想要的。