我正在Visual Studio中编写一些vb.net代码。我已经启用了智能缩进功能,并且希望继续启用它。但是,我的代码中有一部分我想使用一些额外的缩进以更易于理解的方式概述事物。我可以跳到所需的缩进级别,但是一旦我切换到另一行,智能缩进就将行推回“应该”的位置。
如何在我的代码中向某些行添加一些额外的缩进而不完全禁用智能缩进?
Call GetRibbon("Part")
Call GetTab("3D Model")
Call NewButton("Custom1")
Call GetRibbon("Assembly")
Call GetTab("Assemble")
Call NewButton("Custom2")
VS如何格式化:
Call GetRibbon("Part")
Call GetTab("3D Model")
Call NewButton("Custom1")
Call GetRibbon("Assembly")
Call GetTab("Assemble")
Call NewButton("Custom2")
答案 0 :(得分:5)
否,如果在IDE中对您的语言有效,则无法覆盖/取消“智能”选项卡逻辑(已在您的语言的“选项卡”选项中设置-转到IDE的“工具” |“选项”菜单中查看) )。
我认为您最好的选择是应用“智能”逻辑后立即按Ctrl-Z。这样可以还原您想要的缩进。
答案 1 :(得分:1)
抱歉,Call
关键字是.NET Visual Basic之前的版本,因此不需要调用.NET中的子例程。以下内容将更为简洁和必要:
GetRibbon("Part")
GetTab("3D Model")
NewButton("Custom1")
GetRibbon("Assembly")
GetTab("Assemble")
NewButton("Custom2") ' btw this can also be indented as in Jazimov's answer
但是,粘贴重复的代码使我很烦恼,我会建议这样做
Sub Initialize(p1 As String, p2 As String, p3 As String)
GetRibbon(p1)
GetTab(p2)
NewButton(p3)
End Sub
...
Initialize("Part", "3D Model", "Custom1")
Initialize("Assembly", "Assemble", "Custom2")
这时可能不需要缩进
您可以看到Call
仍然可以用于某些骇人听闻的方式来完成类似C#的操作:https://docs.microsoft.com/en-us/dotnet/visual-basic/language-reference//statements/call-statement