78

我正在使用 Resharper 4.5,并且在编写数组或对象初始化程序时需要自定义大括号格式。Resharper 支持一些样式:

牛羚风格:

int[] array = new int[]  
                  {  
                      1, 2, 3  
                  }  

但是我需要:

int[] array = new int[] 
{  
    1, 2, 3  
}  

有没有办法自定义这个模板?

4

5 回答 5

165

您可以自定义 ReSharper 来做到这一点,您需要执行以下操作(全部在ReSharper -> Options -> C# -> Formatting Style中):

  1. Braces Layout中,将Array and object initializer设置为At Next line (BSD Style)
  2. Other中,确保Continuous line indent multiplier设置为1
  3. Other中,确保Indent 数组、对象和集合初始化程序块选中

你应该得到你想要的风格。

于 2009-05-04T09:11:55.313 回答
9

从 R#7.1 开始,一些 Option 属性已更改:

  1. Braces Layout中,将Array and object initializer设置为At Next line (BSD Style)
  2. Other中,确保Continuous line indent multiplier设置为1

就像在旧版本中一样

  1. Other中,在Align Multiline Constructs确保未选中Array、object 和 collection initializer 。
于 2012-12-04T09:09:29.523 回答
2

这篇文章似乎有一个类似于您正在寻找的答案:

ReSharper:修复数组和对象初始化程序缩进

于 2009-04-29T19:30:56.820 回答
0

(@igal 和 @mbx 之前的回答继续)

从 R# 2017.1(可能还有更早的版本)开始,请执行以下操作:

  1. Formatting Style -> Braces Layout中,将Array and object initializer设置为At Next line (BSD Style)
  2. Formatting Style -> Other -> Indentation中,确保将Continuous line indent multiplier设置为1
  3. Formatting Style -> Other -> Align Multiline Constructs中,确保未选中Array、object 和 collection initializer。如果符合相同的样式,您可能还想取消选中匿名方法主体。
于 2017-05-23T15:41:35.113 回答
-4

据我所知你不能,Resharper 带有预定义的样式,但也许如果你创建自己的实时模板并按照你想要的方式设置它就会起作用。

希望这可以帮助。

于 2009-04-14T16:32:58.603 回答