【问题标题】:How do I use visual studio 2012 dark theme with windows 8 high contrast theme?如何将 Visual Studio 2012 深色主题与 Windows 8 高对比度主题一起使用?
【发布时间】:2017-02-08 11:03:47
【问题描述】:

当我在 Windows 8 中使用标准的 Windows aero 主题时,VS2012 允许我在浅色和深色主题之间进行选择,但我在 Windows 8 中为自己创建了一个方便的高对比度主题,现在在显示“高对比度”的 VS 设置,我无法更改。

我属于少数人,喜欢 Visual Studio 新的深色主题,但遗憾的是我无法将它与新的高对比度 Windows 主题一起使用。

有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: visual-studio-2012 windows-8 themes high-contrast


    【解决方案1】:

    我的同事找到了一种在 Windows 使用高对比度模式时在 Visual Studio 中使用深色主题的方法。他遵循以下步骤:

    1. 导出此注册表项:

    HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config\Themes{1ded0138-47ce-435e-84ef-9ec1f439b749} (这应该是黑暗主题的关键)

    1. 在导出的文件中,将深色主题的 GUID ({1ded0138-47ce-435e-84ef-9ec1f439b749}) 替换为高对比度主题的 GUID ({a5c004b4-2d4b-494e-bf01-45fc492522c7} ):

    2. 导入reg文件

    启动 Visual Studio。这对他有用。甚至可以将高对比度主题的主题设置与深色主题的主题设置混合。只需将其中一个子键内容替换为另一个主题的子键之一即可。

    主题的 GUID 在我们的两个系统上似乎相同。但是在尝试之前,您应该始终检查它们。还建议备份密钥!

    【讨论】:

    • 顺便也适用于VS2013。只需在注册表项名称中将 11.0_Config 替换为 12.0_Config 并检查密钥的 GUID 即可确定。
    • 不知道为什么,但是在 Win10 x64 上的 VS 2015 上它不起作用。我破坏了注册表 GUID,从 HighContrast 切换回系统主题,它在主题 GUID 混乱时工作。当我切换到 HighContrast 时也会发生同样的情况 - 它像默认值一样工作,没有任何改变,没有任何错误。唯一的变化是禁用组合框,将“HighContrast”改为“Dark”。
    • 为我工作,我使用的是 VS 2015 + Win10 64x。在注册表中,我更改了目录:“HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\14.0_Config\Themes”。
    • 有没有人让它与 Visual Studio 2017 一起工作?
    • 这么多人感兴趣,有什么办法让微软明白他们应该为此提供官方选项?!?
    【解决方案2】:

    这是在 Visual Studio 2015 中将高对比度皮肤更改为深色皮肤的寄存器更改。通过应用此文件,您可以在 Windows 以高对比度运行时使用深色皮肤。

    使用自担风险!!!

    导出高对比度和深色皮肤的 reg 值 HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\14.0_Config\Themes\(你可以从名称字段的值中看到它是哪一个)

    将深色皮肤导出中的 GUID 更改为高对比度皮肤导出中的 GUID。 (使用“全部替换”来执行此操作)(GUID 如下所示:{a5c004b4-2d4b-494e-bf01-45fc492522c7})

    添加:从高对比度皮肤导出的工作流设计器部分复制值并将其粘贴到深色皮肤导出中(此布局比此设计器的深色皮肤布局更好)

    保存更改后的深色皮肤导出并在 VS2015 未运行时执行。

    【讨论】:

    • 现在我的 Visual Studio 在每次启动时将 14.0_Config 复制到 14.0_Config_4digitnumber 并重置主题。我该怎么办?
    【解决方案3】:

    我为此制作了一个 PowerShell 脚本,因为每次更新时我都必须更新注册表值。

    这适用于 Visual Studio 2015。您只需要更新其他位置的值。

    $HighConstrastTheme = "HKCU:\SOFTWARE\Microsoft\VisualStudio\14.0_Config\Themes\{a5c004b4-2d4b-494e-bf01-45fc492522c7}"
    $DarkTheme = "HKCU:\SOFTWARE\Microsoft\VisualStudio\14.0_Config\Themes\{1ded0138-47ce-435e-84ef-9ec1f439b749}"
    
    Remove-Item -Path $HighConstrastTheme -Recurse
    Copy-Item -Path $DarkTheme -Destination $HighConstrastTheme -Recurse
    

    【讨论】:

      【解决方案4】:

      如您所见,Visual Studio 中的高对比度主题会自动链接到在“轻松访问”中启用 Windows 的“高对比度”模式。

      虽然在该模式处于活动状态时您无法更改主题,但您仍然可以直接通过工具 -> 选项 -> 环境 -> 字体和颜色更改某些颜色设置(编辑器、窗口等)。许多设置直接来自 Windows,但您仍然有一些选择。

      不适用于这种情况,但仅供任何有兴趣调整主题的人参考,Visual Studio 2012 Color Theme Editor 扩展非常方便。 Scott H. 有一个post on using it

      【讨论】:

      • 是否有任何方法可以禁用您为特定应用程序(例如VS2012)提到的这种“自动链接”?我的意思是在我看来,这个选项存在于某个地方似乎是合乎逻辑的......但无论如何感谢您的回答!
      • 我不知道 Visual Studio 中的方法,但如果我找到一个选项,我肯定会更新答案。
      • 你有没有找到一种新的方法来做到这一点,也许是通过编辑注册表并欺骗 VS 使用深色主题而不是高对比度设置?我喜欢大多数应用程序的深色、高对比度外观,但在 VS 中真的不喜欢它,并且非常喜欢深色主题。
      • 不,不幸的是我在那里没有找到任何东西,我仍在寻找解决方案......现在,我在强制高对比度主题中使用 VS2012,我将每种颜色设置为我的口味一一。
      • 高对比度使其他一切看起来都很好并且破坏了 VS。看起来设置单个颜色是唯一的选择。多么痛苦。 VS 2012 颜色主题编辑器绝对没有用。您可以保存主题,但仍然无法从工具选项中访问它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-20
      • 2013-05-17
      • 2020-02-02
      • 2012-11-18
      • 1970-01-01
      • 2016-05-11
      • 2021-12-21
      相关资源
      最近更新 更多