繁体   English   中英

C#-如何检索窗口的背景色

[英]C# - How to Rretrieve Background Color of Window

我在该论坛中进行了搜索,但没有找到任何可以帮助我解决以下问题的内容。 如果可以的话请帮助。 谢谢。

我已将窗口的背景设置为黑色(或我喜欢的任何其他颜色)。 作为应用程序执行的计算的一部分,我在该窗口上绘制了不同颜色的区域。 区域的颜色是动态的,我想在颜色更改之前找到并存储区域的起始颜色,以便可以返回到该基本颜色。 例如,如果起始背景颜色为黑色,并且应用程序将颜色更改为绿色,则我想在需要时将颜色恢复为基础颜色黑色,而不必记住基础颜色为黑色。

我尝试使用

private Color backgroundColor = (Color)System.Drawing.SystemColors.Window;

然后再

BackColor = backgroundColor;

确实可以,但是颜色恢复为白色,而不是我在首选项中指定的黑色。

有人可以提出解决方案吗? 非常感谢您可能会提供的任何帮助。

是的,SystemColors.Window默认为白色。 您可能想要这样:

private Color backgroundColor;

private void startPlotting()
{
    backgroundColor = BackColor;
    BackColor = Color.Black;
    // etc..
}

private void restoreWindow()
{ 
    BackColor = backgroundColor;
}
Color.FromArgb(System.Drawing.SystemColors.WindowFrame.ToArgb());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM