【问题标题】:Visual Studio 2013 Autocompletion of VB.NET PropertiesVisual Studio 2013 自动完成 VB.NET 属性
【发布时间】:2015-05-18 23:26:59
【问题描述】:

我最近在我的 PC 上安装了 Visual Studio 2013,尽管 IDE 的大部分功能都很棒,但 VB.NET 属性的自动完成功能似乎不像以前那样工作了。

以前(VS 2008)在键入以下内容后:

Public Property Test() As String

...然后按 Return,属性的主体将为我自动完成...

Public Property Test() As String
    Get

    End Get
    Set(value As String)

    End Set
End Property

然而,在 VS2013 中,情况似乎不再如此,但如果我输入:

Public ReadOnly Property Test() As String

..然后按Return,属性就完成了。

我在这里遗漏了什么,还是从现在开始就是这样?

【问题讨论】:

    标签: vb.net visual-studio-2013 autocomplete


    【解决方案1】:

    在 VS 2010(我正在使用的)中,行为与 VS 2013 中的相同。后者是只读属性,必须具有并且只能具有 getter,所以这是无效的:

    Public ReadOnly Property Test() As String
    

    这就是为什么如果你按下 Return VS 会自动添加它。如果您希望与“正常”/auto-Implemented property 具有相同的行为,则必须以 Get 开头,例如:

    Public Property Test() As String
    Get
    

    如果你现在按下 Return 你会得到完整的身体:

    Public ReadOnly Property Test() As String
        Get
    
        End Get
        Set(value As String)
    
        End Set
    End Property
    

    【讨论】:

    • 啊!就是那个。看起来有点奇怪,但可行。谢谢蒂姆。
    • 自动实现的属性是一个新的语言特性。如果您的所有属性都是从内部变量读取/写入,那么它们会删除所有样板 - 您可以通过更少的输入获得相同的结果。为了好玩,尝试在具有名为 Test 的自动实现属性的模块中声明一个名为 _test 的变量 - 你会看到编译器在后台创建了一个支持变量“_test”,并且不喜欢你手动声明一个!
    • 这里是更多信息的链接 - msdn.microsoft.com/en-us/library/…
    • @TimSchmelter:是的 - 我要去,但是要赶火车,再过 5 分钟就无法关闭答案! ;o)
    • @KevinO'Donovan:谢谢凯文——我必须承认,我总是喜欢自己处理这类事情。这样做可以让我添加事件等,或者更复杂的代码来处理有问题的值,例如。
    猜你喜欢
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多