如何通过#region(VS2008)关闭周围的自动格式化

时间:2009-11-20 09:21:48

标签: visual-studio visual-studio-2008 formatting

我不喜欢VS格式化代码的方式,所以我在Text Editor / C#/ Formatting中取消选中了所有3个选项。
我还检查了“忽略声明中的空格”。 在大多数情况下它都有效。

但是当我通过例如围绕代码时。 #region 我注意到我的声明已重新格式化(删除了TAB)

这是一种防范方法吗?

我正在使用TAB进行对齐,并检查了工具 - >选项 - >文字编辑器 - > C# - >标签 - > “保留标签”

1 个答案:

答案 0 :(得分:1)

我使用Narrange来格式化我的所有文件,它按名称重新排序方法,并将它们分组到区域中。 非常好。

我发布这个因为我很喜欢nArrange格式化代码的方式,你也可以创建自己的格式作为模板,将它们应用到代码中。

但是如果您更喜欢使用Vs内部环绕声功能,您可以转到片段文件夹“C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC#\ Snippets \ 1033 \ Visual C#” 编辑pp_region.snippet文件并在$ end子句后删除Enter,如下所示:

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>#region</Title>
      <Shortcut>#region</Shortcut>
      <Description>Code snippet for #region</Description>
      <Author>Microsoft Corporation</Author>
      <SnippetTypes>
        <SnippetType>Expansion</SnippetType>
        <SnippetType>SurroundsWith</SnippetType>
      </SnippetTypes>
    </Header>
    <Snippet>
      <Declarations>
        <Literal>
          <ID>name</ID>
          <ToolTip>Region name</ToolTip>
          <Default>MyRegion</Default>
        </Literal>
      </Declarations>
      <Code Language="csharp"><![CDATA[#region $name$
    $selected$ 
$end$ #endregion]]>
      </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

并删除部分Vs的las行中的Enter将不再自动编码您的代码。