Visual Studio中多行参数列表的自动缩进

问题描述 投票:8回答:2

[当某个方法的参数列表增长到不能舒适地放在一行上的程度时,我喜欢对代码进行格式化,以使每个参数都位于单独的一行上(遵循StyleCop建议),如下所示:

public void MyMethod(
   int someArgument,
   double someOtherArgument,
   int someMoreArguments)

我遇到的问题是,这种格式是“易碎的”,使用Ctrl + K + D时不会自动重新格式化。例如,如果我碰巧在其中一个参数前面插入了一些空格,那么该空格不会被删除,最终我会进行一些繁琐的手动重新格式化。如果我复制一个方法(例如,提供重载的签名),则副本中的参数缩进将变得完全混乱。我在LINQ语句中也遇到类似的问题,我也想将其格式化为多行,例如:

myEnumerable.
   .Where(this and that)
   .Where(this and that)
   .FirstOrDefault();

我意识到这是完整的强迫症格式,是一个非常小的问题,但是有没有一种方法可以使Visual Studio 2010在未对齐时自动按照该模式重新缩进多行参数?

visual-studio-2010 code-formatting
2个回答
3
投票

您可能想看看JetBrains的Resharper。它具有可用于格式化代码的各种规则,比内置VS更好。


0
投票

对于今天遇到这个问题的人,在Visual Studio 2017中,我找到了执行此操作的选项。(不确定是否在其他版本中可用)在工具->选项->文本编辑器-> C / C ++->格式->缩进->“在括号内,键入新行时对齐”选择选项“将内容对齐到左括号。

© www.soinside.com 2019 - 2024. All rights reserved.