0
我正在開發一個將在幾個項目中使用的類庫。.NET類訪問修飾符(朋友和公衆)
在我的類庫中,我有一個「Shape」類,它具有許多屬性。 其中一個屬性是「尺寸」,它返回一個具有「高度」「寬度」和「深度」屬性的類。
我該如何抑制Dimension類在編輯器中可見,同時在類庫中自由選擇?
我已經在類文件中放入了一個命令,但是這將它隱藏在庫和我的應用程序中。
<ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.Never)> _
我也改變了類接取修飾符朋友,但是這阻止時調用的類庫外物業公共接入Shape類。
我想要做的就是防止在類庫之外創建Dimension類的實例。
謝謝。
這是代碼的功能我想實現:
Interface IShape
ReadOnly Property Properties() As ShapeProperties
End Interface
Public Class Shape
Implements IShape
Dim _Properties As New ShapeProperties(0, 0, 0)
Sub New()
_Properties = New ShapeProperties(3, 4, 5)
End Sub
Public ReadOnly Property Properties() As ShapeProperties Implements IShape.Properties
Get
Return _Properties
End Get
End Property
End Class
Friend Class ShapeProperties
Dim _Height As Integer = 0
Dim _Width As Integer = 0
Dim _Depth As Integer = 0
Friend Sub New(ByVal h As Integer, ByVal w As Integer, ByVal d As Integer)
_Height = h
_Width = w
_Depth = d
End Sub
Private ReadOnly Property Height() As Integer
Get
Return _Height
End Get
End Property
Private ReadOnly Property Width() As Integer
Get
Return _Width
End Get
End Property
Private ReadOnly Property Depth() As Integer
Get
Return _Depth
End Get
End Property
End Class
我無法編譯類庫在上面的代碼。我希望ShapeProperties只能在Shape類中訪問,而不能在其自身中訪問。我能夠解決這個問題的唯一方法是更改ShapeProperties的訪問屬性,這不是我想要的。
ClassLibrary.Shape是好的,但 ClassLibrary.Properties不是。
謝謝。