当我有同样的需求时,我使用了Reflector(带有BAML Viewer插件)和这个颜色编辑器。
VS控件的样式和模板位于路径(VS2010的路径)\Common7\IDE\en\
,
必要的文件是Microsoft.VisualStudio.Shell.UI.Internal.resources.dll
如果在BAML Viewer中展开此库,将会有许多文件,但最有用的列在文件themes/generic.xaml中。
它们是:
- Styles/MainWindowStyle.xaml - 主窗口的标记。
- Styles/CommandMenuStyle.xaml - 菜单、工具栏、组合框的样式。
- Styles/StandardContextMenuStyle.xaml - 上下文菜单的样式。
例如,如果打开MainWindowsStyle.xaml,你会找到这段代码:
<Setter x:Uid="Setter_26" Property="Background" Value="{DynamicResource {x:Static EnvironmentBackgroundGradientKey}}" />
现在安装VS颜色主题编辑器,在Visual Studio中打开Theme -> Customize Colors -> Default。
关键字EnvironmentBackgroundGradient
在列表中有4个项目。它可以如下所示进行编写:
<LinearGradientBrush x:Key="EnvironmentBackgroundGradient" StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Color="#293955"/>
<GradientStop Color="#35496a" Offset="0.5"/>
<GradientStop Color="#35496a" Offset="0.5"/>
<GradientStop Color="#293955" Offset="1"/>
</LinearGradientBrush>
可能这些颜色已经有详细的解释,但我没有找到,因此我使用了 Reflector。
其他有用的程序集:
- en\Microsoft.VisualStudio.Platform.WindowManagement.resources.dll - TabControl 和 DockManager 的样式
- PrivateAssemblies\Microsoft.VisualStudio.ExtensionsExplorer.UI.dll - 选择新项目
在这里,是我之前实现的类似于 VS2010 样式的 TabControl
。它没有相同的功能,但外观相同。
c:\Program Files\Microsoft Visual Studio\Common7\IDE\PrivateAssemblies\
。此外,您还可以使用Windows资源管理器的搜索菜单轻松找到它们。 - vortexwolf