jag undrar hur man gör för att gömma funktioner/egenskaper i en basklass då man ärver den. Ett sätt som nog löser ditt problem som du beskriver det är att implementera ett Interface för de funktioner i din childklass som du vill visa. Gömma funktioner
Jag har testat med att lägga till följande attribut till egenskaperna
<EditorBrowsableAttribute(EditorBrowsableState.Advanced), Browsable(False)>
eller
<EditorBrowsableAttribute(EditorBrowsableState.Never), Browsable(False)>
Men de tar bara bort egenskapen från Properies fönstret, funktionen/egenskaperna dyker fortfarande upp då man skriver koden (Intellisensen)
Hur gör man för att dölja egenskaperna/funktionerna helt och hållet?
/StefanSv: Gömma funktioner
Public Interface IChild
Function ChildFunction() As String
Sub ChildMethod1(ByVal i As Integer)
Sub ChildMethod2()
End Interface
Sedan låter du din childklass ta del av interfacet såväl som av basklassen.
Public Class Child
Inherits Base
Implements IChild
.....
.....
När du sedan tänker använda din childklass och bara vill exponera de funktioner som ditt interface beskriver så gör du enligt följande:
Sub Main()
Dim ic As IChild = New Child()
vips så får du intellisence med endast de metoder interfacet beskriver..
ic .ChildFunction()
.ChildMethod1(10)
.ChildMethod2()
End Sub
/Per