按钮在 Windows 7 上有黑色背景

Button has black background on Windows 7

我目前正在将针对 WIndows XP 和 Server 2003 的应用程序移动到 Windows 7(及更高版本)。大多数应用程序运行良好,但某些按钮在 Windows 7.

中有黑色背景

Windows XP

Windows 7

该应用程序在 Visual Studio 2005 中以 .NET v2.0 为目标(一旦完成向 Windows 7 的迁移,我们将迁移到更高版本的 .NET 和 Visual Studio) . None 的可用属性似乎有所帮助。这是我认为可能相关的属性列表(在 XP 和 7 上相同):

BackColor = ActiveCaptionText
BackgroundImage = (none)
TileBackgroundImageLayout = Tile
ForeColor = ControlText
TextImageRelation = Overlay
UseVisualStyleBackColor = False (changing to True doesn't help)

需要做什么才能使按钮看起来像在 Windows XP 上一样?

ActiveCaption 颜色在 SystemColors Class 中定义。这些设置在 OS.

http://msdn.microsoft.com/en-us/library/system.drawing.systemcolors.aspx

活动标题是活动 window 标题栏的背景颜色。

我认为您需要将 BackColor 属性 更改为 Control 以使您的表单看起来像您想要的那样:

BackColor = SystemColors.Control;

或任何其他想要的颜色。