在Visual Studio 2010中自动打开区域

时间:2010-09-17 18:10:01

标签: c# visual-studio regions

我希望在打开代码文件时默认情况下展开我的Visual Studio窗口中显示的区域。这在VS2010中是否可行,或者是否有扩展可以为我做到这一点?

除此之外,我的请求是否可以写在扩展名中?

5 个答案:

答案 0 :(得分:7)

如果您希望区域设置已关闭,请右键单击任意代码窗口,选择Outlining,然后选择Stop Outlining

答案 1 :(得分:2)

每次打开文档时,您都可以编写一个为您调用Visual Studio Command Edit.StopOutlining的宏。

此MSDN页面描述了如何编写处理事件的基本宏:http://msdn.microsoft.com/en-us/library/ee1f34as.aspx 您应该处理WindowClosing而不是处理WindowActivated

像这样:

Public Sub windowopen(ByVal window As EnvDTE.Window, ByVal lostFocus As EnvDTE.Window) Handles WindowEvents.WindowActivated
    DTE.ExecuteCommand("Edit.StopOutlining")
End Sub

当然,这会在你打开的每个窗口上调用Edit.StopOutlining;所以也许你必须对过滤的文件类型进行一些过滤。

答案 2 :(得分:2)

有一个免费的 Visual Studio 2010扩展程序,它会自动为您扩展所有区域:

  

<强> Auto-Expand Visual Studio Regions

另请参阅此相关问题:

  

How to permanently disable region-folding in Visual Studio

答案 3 :(得分:1)

要创建扩展C#文件所有区域的宏,请执行以下操作:

  1. 从Tools&gt;打开Visual Studio Studio宏窗口。宏&gt;宏IDE ...

  2. 在Project Explorer中的EnvironmentEvents vb文件中(如果没有,然后创建一个新模块,它将出现)在自动生成的代码区域之后添加以下代码

    Private Sub WindowEvents_WindowActivated(ByVal GotFocus As EnvDTE.Window, ByVal LostFocus As EnvDTE.Window) Handles WindowEvents.WindowActivated
    If GotFocus.Document.FullName.EndsWith(".cs") Then
        DTE.ExecuteCommand("Edit.StopOutlining")
    End If
    

    End Sub

  3. 保存并构建项目

  4. 如果您需要更多有关宏的帮助,请阅读this msdn page以获取更多信息。

    我正在处理的这个宏存在一个问题,即如果你点击解决方案资源管理器中的任何文件,VS会自动打开它。

答案 4 :(得分:1)

对于较新的Visual Studio版本(例如2015,但它也适用于2010),有一个名为I hate #Regions的扩展名。您可以通过工具&gt;下载并安装它。扩展程序和更新&gt;在线的。它会自动扩展所有区域并降低区域标签的字体大小。希望它有所帮助。