我正在尝试在vs2010中自动格式化我的解决方案中的所有文件。我已经看到没有内置选项可以做到这一点。我试着写宏来做,但我已经坚持了。
当我在项目中迭代任何ProjectItem
时,我不知道如何在源代码模式下打开可设计文件,或者如何区分可源文件和可源文件(例如 png -s或者等等。)
你有什么建议吗?
感谢。
答案 0 :(得分:8)
好而不是编写一个宏检查Code Maid(在visualstudiogallery上免费)有这两个功能:
有许多关于CleanUp的选项
答案 1 :(得分:4)
我认为以下内容适用于您,它基于我在Visual Studio中完成的其他文件迭代。如果要格式化其他文档类型,请更改FormatFile例程以支持其他文件扩展名。
Sub IterateFiles()
Dim solution As Solution = DTE.Solution
For Each prj As Project In solution.Projects
IterateProjectFiles(prj.ProjectItems)
Next
End Sub
Private Sub IterateProjectFiles(ByVal prjItms As ProjectItems)
For Each file As ProjectItem In prjItms
If file.SubProject IsNot Nothing Then
FormatFile(file)
IterateProjectFiles(file.ProjectItems)
ElseIf file.ProjectItems IsNot Nothing AndAlso file.ProjectItems.Count > 0 Then
FormatFile(file)
IterateProjectFiles(file.ProjectItems)
Else
FormatFile(file)
End If
Next
End Sub
Private Sub FormatFile(ByVal file As ProjectItem)
DTE.ExecuteCommand("View.SolutionExplorer")
If file.Name.EndsWith(".cs") OrElse file.Name.EndsWith(".vb") Then
file.Open()
file.Document.Activate()
DTE.ExecuteCommand("Edit.FormatDocument", "")
file.Document.Save()
file.Document.Close()
End If
End Sub