Visual Studio如何更改C#方法参数颜色?

10
在Visual Studio 2013中,有没有办法更改C#方法参数的语法颜色?例如,我能让AAA和BBB变成彩色,但不让someInt、Foo和ToString变成彩色。
private int MyMethod(int AAA, int BBB)
{
    int someInt = new int();
    someInt = AAA + BBB;
    string Foo = AAA.ToString();
}

我尝试前往 工具 -> 选项 -> 环境 -> 字体和颜色 -> 文本编辑器 并更改标识符,但这会改变几乎所有东西(变量、方法、参数)的着色。


我猜Power Tools扩展可以让你自定义更多的东西... 我会试一试。 - Luis Filipe
还要看一下如何自定义VS主题。 - Luis Filipe
看起来 Power Tools 似乎不能在文本编辑器中进行颜色编码,但它添加了鼠标点击滚动功能,这也是我一直在寻找的。 - Aaroninus
5个回答

12

ReSharper可以做到这一点。

首先,在 ReSharper 选项中检查此选项:

ReSharper options

然后在 VS 选项中选择颜色:

VS options

最终结果:

enter image description here


哎呀,我只下免费的扩展,所以错过了Resharper选项。谢谢你指出来,@Lucas! - James Jensen
@JamesJensen 这个东西以几乎所有可以想象的方式增强了VS,称其为“扩展”并不能充分体现它的价值。一旦你尝试过它,就再也回不去了。 ;) - Lucas Trzesniewski
@LucasTrzesniewski,所以没有本地化的方法吗?我不会仅仅为了这个功能而购买ReSharper。很好奇为什么C++/CLI可以使用这个功能,但是C#却不能。 - ToastyMallows
@ToastyMallows 我不知道有没有本地的方法来实现这个,但如果你想的话,编写一个插件就很容易了,特别是使用 Roslyn。但我鼓励你尝试一下 R#,如果你还没有尝试过的话,你会惊讶于以前没有它是如何生活的 ;) - Lucas Trzesniewski
我在工作中被CodeRush订阅卡住了。 CodeRush内部是否有这样的能力? - Jonesopolis

6
我最近在寻找TypeScript的类似工具时发现了这个扩展,显然它支持C#和VisualBasic,所以它可能对你和其他任何在寻找类似工具的人很有帮助:Visual studio SemanticColorizer

1
该链接扩展仅适用于Visual Studio 2015。 - Aaroninus
Codinion(https://visualstudiogallery.msdn.microsoft.com/504311cf-bd01-4b12-bca3-a3e5d9505b76)也提供语义着色功能。适用于2013和2015版本。 - slopapa
更新:在撰写本文时,SemanticColorizer 支持 MSVC 2015、2017 和 2019。 - Len

1

0

现在你可以在Visual Studio中无需任何扩展程序就能完成这个操作。

这是VS 2022。

enter image description here


-6

很遗憾,你无法在C#语言中给参数变量着色。不过,你可以编写一个扩展来实现这一点。或者,你也可以将所有内容重写为C++,在那里你可以让参数变量着色。


8

“老板,我们无法将参数按照我们想要的方式着色。”

“嗯,我想我们别无选择,只能用 C++ 重新编写整个应用程序了。”
- Jonesopolis
1
现在,为什么这个答案被踩了,而且回复还带刻薄和不合逻辑的语气?Visual Studio 2013不容易在IDE中支持参数着色(这并不是你的“应用程序”),我提到的选项表明:(a)你可以编写自己的扩展来按你想要的方式颜色化IDE中的参数,或者(b)你可以使用C++编程(顺便说一句,这是夸张的例子而不是愚蠢)。 - James Jensen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接