首页 文章

我可以让GroupBox ForeColor的行为与WinForms中的Button相同吗?

提问于
浏览
0

我期待GroupBox Headers 和按钮 Headers 上的文本具有相同的颜色,如果它们具有相同的ForeColor(以及其他类似的控件设置) .

GroupBox的ForeColor属性和几个按钮都设置为ControlText,但它们呈现为蓝色(groupbox)和黑色(按钮) . 假设这些匹配当前的XP主题 . 问题是如何在这些控件或Winforms控件上设置属性,以便它们的行为是一致的和预期的?或者它已经是正确的,我是误解?

1 回答

  • 1

    这通常不是主题如何运作的 . 它根据用户选择的主题覆盖控件的默认属性 . ProgressBar.ForeColor就是一个更加鲜明的例子,无论你在设计师中选择什么颜色,它都将成为Vista上的脉冲绿色条 .

    Fwiw,当你试图覆盖它时,你会遇到相当多的痛苦 . GroupBox.ForeColor是一个非常值得注意的例子 . 如果你从不自己分配ForeColor,它只会有主题颜色(它是假的btw) . 一旦你这样做,你就永远无法重置它 . 即使再次分配ControlText,您也会变黑,而不是主题颜色 . 从“Windows环境中的环境属性”的实现方式来看,这有点不可避免 . 称它为bug是不合理的 . 不摆弄它是避免这种麻烦的最佳方法,您的用户不会抱怨 .

相关问题