2014-09-12 87 views
0

可以通过编程方式禁用Visual Studio代码自动格式化吗?以编程方式禁用Visual Studio代码格式

我希望我保留相关属性在一起像

public class Test 
{ 
    public string Prop1 { get; set; } 

    public bool Prop2 { get; set; } 
    internal string Prop2String { get { return Prop2 ? "Yes" : "No"; } } 
} 

但Visual Studio的格式,它一类

public class Test 
{ 
    public string Prop1 { get; set; } 

    public bool Prop2 { get; set; } 

    internal string Prop2String 
    { 
     get { return Prop2 ? "Yes" : "No"; } 
    } 
} 

我不想关上的Visual Studio完全格式化,但只在代码的特定位置。

+2

您可以通过在键入时不打回车来获得第一个“选项”...? (注意:它仍然格式化该行上的间距*,因为你关闭了大括号) – crashmstr 2014-09-12 14:19:53

+0

我很嫉妒。我的视觉工作室没有像第二个那样格式化。你为什么不要那样想呢。 – DidIReallyWriteThat 2014-09-12 14:24:11

+0

我有一个类的负载属性和一些这些内部属性只翻译使用扩展方法的其他属性。像布尔到'是'/'否'字符串存储在一个设计不佳的数据库。 – 2014-09-12 14:27:23

回答

0

您无法禁用某些片段,您可以按需要键入它。但是,如果您不小心打到CTRL + K then F,它将自动调用给定区域的样式。你要么全部 on或全部关闭。

你可以在这里找到细节:

  • 工具
  • 选项
  • 文本编辑器

然后,只需选择你的语言和格式修改你的愿望。基本上,我提到它充满了复选框或单选按钮。 (开或关)

虽然你不喜欢选择二,但在我看来它更清晰易读。尤其是一旦Visual Studio在方法/属性上添加了参考和其他数据。


例子:

如果键入:

public string Name{get;set;} 

Visual Studio将它改成这样:

public string Name { get; set; } 

如果你喜欢这类型的:

public string Name 
{ 
    get; 
    set; 
} 

Visual Studio不会改变它,如果你输入代码作为括号内的一行,Visual Studio通常会保持它的样子。因此,当您尝试使用Visual Studio强制更改样式时:

internal string Prop2String { get { return Prop2 ? "Yes" : "No"; } } 

它保持它的写法。

+3

请不要在建议中单独使用键盘快捷键 - 每个人的键盘设置都不一样,很难看出您的意思。即对我来说Ctrl + Shift + F是“在文件中查找”,它显然不会做任何格式化(VS 2005 C#+ R#方案)。 – 2014-09-12 14:30:07

+0

*你无法禁用某些片段,你可以按你想要的方式输入。* - 你可以重新说明吗?我不确定它是什么意思..我相信“意外”这个词是多余的 - 即使故意完成,它也会自动调用样式。您能否添加有关OP所具有的特定问题需要更改哪些设置的详细信息?你基本上说“在Visual Studio中有可以更改的设置”。它“充满了复选框”也无济于事。 – Default 2014-09-12 14:34:26