在Visual Studio中更改所选文本的文本颜色

时间:2012-07-04 00:08:35

标签: visual-studio-2010 visual-studio user-interface textcolor

  

可能重复:
  I can't edit selected text foreground color in Visual Studio 2010. Anyone know how to do this?

选项 - >环境 - >字体和颜色对话框中,您可以在“显示项目”列表框中选择Selected Text,但这只允许您更改“项目”背景属性。

如何更改文本颜色,例如,当我选择项目时,我可以在蓝色背景上显示白色文本?此外,是否有一种方法可以加粗文本(Bold框也被禁用)。

注意:Here is the question询问背景颜色变化。

3 个答案:

答案 0 :(得分:6)

VS2010编辑器中的前景色不是在一个地方设置,而是在选项表单中设置多个。如果安装了Resharper,它还会设置一些前景属性。 VS2010这样做的原因是允许前景中的各个项目(单词)根据其类型(例如注释,值类型,枚举等)表达不同的颜色,即使它们被选中。换句话说,VS2010对通用选定文本颜色格式的这些特定类型的前景颜色应用优先级。

例如,当您查看“字体和颜色”对话框时,您会注意到“用户类型”条目。在我的VS2010上,它的RGB值是RGB(43,45,175),看起来像蓝绿色。如果我将该颜色更改为红色,则编辑器前景色的用户类型将变为红色,即使选择区域也保持红色。

在某些情况下,VS2010会覆盖前景色,例如对线应用断点。在我的VS2010启用断点时,在编辑模式下具有白色前景色,无论行中的术语如何。

要回答关于如何更改所有选定文本的前景色的问题,VS2010不支持开箱即用。

我按照概述here写了一个VS2010扩展。我按原样使用了示例代码,并添加了以下行:

        selectedText[EditorFormatDefinition.ForegroundBrushId] = Brushes.Green;
        formatMap.SetProperties("Selected Text", selectedText);

...但是这并没有将所选文本的前景色更改为绿色。它保持黑色。这可能是由于VS2010 WPF编辑器使用每种格式的优先顺序和一种或多种覆盖所选文本前景色的其他格式。

答案 1 :(得分:4)

您是否尝试在“字体和颜色”窗口中的“突出显示参考”选项上设置颜色?

答案 2 :(得分:2)

Selected Text前景属性没有单独设置,它在选项表单中使用前景的Plain Text设置,但这仅适用于普通文本,属性的前景颜色,评论和其他特色彩色文字将保持不变,没有可用于所有项目的重写前景色。

相关问题