こんなマクロでできたっぽい。
デザイナが生成したファイルは.Designer.cs
で終わることを条件にして無視してます。
問題があるとしたら、2012からはマクロが消えたので使えない、というところですかね。
誰か拡張機能つくってくだしあ。
Imports System
Imports EnvDTE
Imports EnvDTE80
Public Module Module1
Sub FormatAllLines(ByVal item As ProjectItem)
Dim win As Window = item.Open()
win.Activate()
DTE.ExecuteCommand("Edit.FormatDocument")
' usingの整理もする場合は下の行を有効にしてね!
' DTE.ExecuteCommand("Edit.RemoveAndSort")
item.Save()
win.Close()
End Sub
Sub FormatProjectItems(ByVal items As ProjectItems)
For Each item As ProjectItem In items
If item.Name.EndsWith(".cs") AndAlso Not item.Name.EndsWith(".Designer.cs") Then
FormatAllLines(item)
End If
If Not IsNothing(item.ProjectItems) Then
FormatProjectItems(item.ProjectItems)
End If
Next
End Sub
Sub FormatAllProjectItem(ByVal proj As Project)
If proj.Kind = ProjectKinds.vsProjectKindSolutionFolder Then
For Each pitem In proj.ProjectItems
FormatAllProjectItem(CType(pitem.Object, Project))
Next
Else
FormatProjectItems(proj.ProjectItems)
End If
End Sub
Sub TemporaryMacro()
For Each proj In DTE.Solution.Projects
FormatAllProjectItem(proj)
Next
End Sub
End Module