В нашей IDE, например, Visual Studio, если мы отображаем свойства элемента управления System.Windows.Forms.Button, мы видим некоторые свойства, которые предоставляют другой набор свойств. Например: FlatAppearance, Font, Location, Margin , и так далее.
Я хотел бы сделать что-то подобное в пользовательском элементе управления.
Я знаю, что код неверен , но вот пример того, что я пытаюсь сделать:
Public Class StateOfMyCustomControl
Public Enum EnumVisibility
Visible
NonVisible
End Enum
Public Enum EnumEventManagement
Automatic
Manual
End Enum
Private mAssociatedControl As MyCustomControl
Private mVisibility As EnumVisibility
Private mEventManagement As EnumEventManagement
Public Sub New(ByVal AssociatedControl As MyCustomControl)
mAssociatedControl = AssociatedControl
End Sub
Public Property Visibility() As EnumVisibility
Get
Return mVisibility
End Get
Set(ByVal value As EnumVisibility)
mVisibility = value
mAssociatedControl.Visible = False
If mVisibility = EnumVisibility.Visible Then
mAssociatedControl.Visible = True
End If
End Set
End Property
Public Property EventManagement() As EnumEventManagement
Get
Return mEventManagement
End Get
Set(ByVal value As EnumEventManagement)
mEventManagement = value
End Set
End Property
End Class
Public Class MyCustomControl
' ...
Private mState As StateOfMyCustomControl
Public Sub New()
mState = New StateOfMyCustomControl(Me)
End Sub
Public Property State() As StateOfMyCustomControl
Get
Return mState
End Get
Set(ByVal value As StateOfMyCustomControl)
mState = value
End Set
End Property
' ...
End Class
В моей среде IDE в окне свойств моего пользовательского элемента управления я хотел бы видеть мое свойство Состояние , с возможностью его отображения для установки свойств Видимость и EventManagement .
Большое спасибо