【问题标题】:Is it possible to use theme colors in Windows Forms apps?是否可以在 Windows 窗体应用程序中使用主题颜色?
【发布时间】:2009-11-16 22:15:15
【问题描述】:

在设计 Windows 窗体应用程序时,我通常尽可能使用System Colors,以使其符合用户的偏好。但是可以使用Theme Colors吗?

我意识到这会在几个方面限制您(必须运行支持它的 Windows 并且运行主题服务),所以如果它可以使用其他默认设置,我当然会喜欢它,但由于我相当确定 99% 的用户可以使用它,因此我想尽可能使用它。

具体来说,对于较新的 Windows 版本(Vista 和 7),超链接之类的东西具有更柔和、更柔和的蓝色。旧的系统颜色没有为链接等定义任何内容,并且通常在选择和多样性方面更加有限(来自 95 天)。

虽然 WPF 可能有更好的支持,但我不能随意使用它。如果某些第三方实用程序、程序集等是必要的,那么它也需要可以免费使用。我不需要任何花哨的东西,但在一个完美的世界里,我可以做这样的事情:

linkLabel1.LinkColor = System.Drawing.ThemeColors.Hyperlink;

我是否只使用默认的蓝色 (0,0,255) 并让它们在 Vista 及更高版本中显得格格不入?如果需要,我什至会满足于丑陋的 p/invoke 互操作方法......

【问题讨论】:

    标签: winforms themes colors systemcolors


    【解决方案1】:

    我知道这是一个愚蠢的想法,但您可以检查操作系统版本,然后预加载一组颜色

    【讨论】:

    • 假设他们没有更改默认主题。这很可能,因为大多数人不这样做,但仍然......它不像当前的 System.Drawing.SystemColors 方式那么优雅。
    【解决方案2】:

    你知道我推测的这两个属性吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-22
      相关资源
      最近更新 更多