我想我会问...但有没有办法有可作为公众属性的Get部分,但是保持在设定为私有?
否则,我想我需要两个属性或属性和方法,只要想通这将是更清洁。
我想我会问...但有没有办法有可作为公众属性的Get部分,但是保持在设定为私有?
否则,我想我需要两个属性或属性和方法,只要想通这将是更清洁。
是的,相当直截了当:
Private _name As String
Public Property Name() As String
Get
Return _name
End Get
Private Set(ByVal value As String)
_name = value
End Set
End Property
我不知道的Visual Studio的最低版本要求是什么,但在VS2015你可以使用
Public ReadOnly Property Name As String
它是只读的,供公众查阅,但可以通过私下修改_Name
Public Property Name() As String
Get
Return _name
End Get
Private Set(ByVal value As String)
_name = value
End Set
End Property
一个额外的调整值得一提:我不知道这是一个.NET 4.0和Visual Studio 2010中的功能,但如果你同时使用,你不需要申报值参数的代码的setter /突变块:
Private _name As String
Public Property Name() As String
Get
Return _name
End Get
Private Set
_name = value
End Set
End Property
我发现标志着property
为readonly
除上述答案干净。 我相信,VB14是必需的。
Private _Name As String
Public ReadOnly Property Name() As String
Get
Return _Name
End Get
End Property
这可以被冷凝成
Public ReadOnly Property Name As String
https://msdn.microsoft.com/en-us/library/dd293589.aspx?f=255&MSPPError=-2147217396
如果你正在使用VS2010或以后它比那更容易
Public Property Name as String
你得到的私有属性和获取/完全免费设置!
看到这个博客帖子: 斯科特谷的博客