我在Windows窗体表单上有一个按钮,当我点击它时,我将背景颜色更改为Color.Yellow
。再次单击时,我想将其恢复为原始默认外观。
默认的背景颜色是SystemColor.Control
。
单击按钮时,我第一次更改的是
btn.Text = "ABC";
btn.BackColor = Color.Yellow;
当它再次被点击时我会这样做
btn.BackColor = SystemColors.Control
新背景与任何点击之前的阴影没有相同的阴影。该按钮最初的背景不是纯色,而是两种略有不同的灰色阴影。最终的颜色最终是一个坚实的灰色阴影。
我正在Windows 7机器上测试它。
截图:
试试这个:
if (button1.BackColor == Color.Yellow)
{
button1.BackColor = SystemColors.Control;
button1.UseVisualStyleBackColor = true;
}
else
{
button1.BackColor = Color.Yellow;
}
您还应该将UseVisualStyleBackColor设置为true。更改背景颜色时,此属性设置为false。
尝试使用btn.ResetBackColor()
而不是手动设置BackColor
。
这将恢复默认外观(在Windows 7上测试,.net 3.5):
btn.BackColor = System.Drawing.Color.Transparent;