加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net – Visual Studio的VB智能缩进和格式文件很疯狂 – 如何

发布时间:2020-12-17 07:20:38 所属栏目:百科 来源:网络整理
导读:我在这里做了一点搜索,我很惊讶没有人问过这个问题.对于多行语句,Visual Studio 2010的VB智能缩进是否会被严重破坏?或者我正在做/设置错误的东西?我把它设置为4个字符的缩进与保持标签.在VB中使用自然返回键入多行语句会产生以下内容(更改属性名称以保护无
我在这里做了一点搜索,我很惊讶没有人问过这个问题.对于多行语句,Visual Studio 2010的VB智能缩进是否会被严重破坏?或者我正在做/设置错误的东西?我把它设置为4个字符的缩进与保持标签.在VB中使用自然返回键入多行语句会产生以下内容(更改属性名称以保护无辜者).

Public Sub Sub1()
    Dim foo As New MyClassA With {.FileName = "test",.Format = MyEnumForImageFormat.jpg,.IsReallySpecial = False,.Name = "testN",.SourceId = Guid.NewGuid(),.VariantName = "TestV",.Width = 800,.Height = 600}
End Sub

怎么会有人想这样格式化他们的代码?我想,也许我需要重新格式化(Ctrl K Ctrl D):

Public Sub Sub1()
    Dim foo As New ImageBase With {.FileName = "test",.Height = 600}
End Sub

为了更好的衡量,我再次尝试重新格式化.瞧,它把它推得更远了.我再次推了它,它又动了一些.最后,经过四次重新格式化后,我的代码如下:

Public Sub Sub1()
    Dim foo As New ImageBase With {.FileName = "test",.Height = 600}
End Sub

更好,但我们真的希望连续的线条只缩进一个空格吗?为什么我必须重新格式化四次以获得我想要的东西?最重要的是,尝试在上面添加一个属性定义并不保持任何对齐 – 默认缩进是通过随机确定的空格和制表符数量向右级联偏移.

使用旧式的延续字符没有帮助.我怎样才能有任何理智的智能缩进?

解决方法

根据您选择拆分线的确切位置,您会发现自动缩进更好或更差.在你的例子中,我的风格是将开括号和第一个项目带到下一行,之后缩进将表现得更好.

Public Sub Sub1()
    Dim foo As New MyClassA With
        {.FileName = "test",.Height = 600}
End Sub

不想假设太多,我相信多行语句中每行的缩进由前一行控制.然而,通过这种风格选择,您会发现使用自然回归添加项目以正确定位自己.将任何粘贴片段复制到不同缩进级别的目标时,这仍然会导致缩进问题,但由于返回的位置正确,我手动重置每一行并没有太多问题(重复Down,End,Delete,输入.)

类似的解决方案对于多行lambda函数很有用,但是这些函数比直线多行语句更好.正确定位开启调用会自动纠正整个例程的缩进.

这不是很好,缩进浮动:

Public Sub Sub1()
    Dim a As New Action(Sub()
                            Dim b As Double = 4.0
                            Dim c As Double = 5.0
                            Dim d As Double = b * c
                        End Sub)
End Sub

这与压头的表现很好:

Public Sub Sub1()
    Dim a As New Action(
        Sub()
            Dim b As Double = 4.0
            Dim c As Double = 5.0
            Dim d As Double = b * c
        End Sub)
End Sub

正如个人风格我更喜欢这些,其他人可能会得到相同的结果与不同的外观.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读