可以通过<Browsable(False)> _ 使继承来的用户自定义控件在【属性】窗口隐藏某些属性。例如,自定义控件不能用作可滚动的容器,因此不应该在【属性】窗口中显示AutoScroll,AutoScrollMargins,AutoScrollPosition和DockPadding items等属性。可以通过隐藏这些基类的属性(Shadows)并添加一个<Browsable(False)>特性来实现:
<Browsable(False)> _
Shadows Property AutoScroll() As Boolean
Get
'并不真正需要委托给内部的用户控件
End Get
Set(Byval Value As Boolean)
'并不真正需要委托给内部的用户控件
End Set
End Property
注意,尽管可以很容易地在【属性】窗口中隐藏一个属性,但是根据继承规则,却不能在自定义控件的编程界面中完全隐藏一个用户控件的属性。然而,可以通过代码使程序在运行时访问该属性时,引发一个异常。
<Browsable(False)> _
Shadows Property AutoScroll() As Boolean
Get
If Not Me.DesignMode Then
Throw New NotImplementedException()
End If
End Get
Set(Byval Value As Boolean)
If Not Me.DesignMode Then
Throw New NotImplementedException()
End If
End Set
End Property