Una facilita

15/09/2004 - 15:15 por AJPB | Informe spam
Pipol,

Tengo un control A que hereda al control B, al control A
le creo nuevas propiedades pero ademas quiero ocultar
algunas de las propiedades de la clase base ( B ). Como
podria lograr eso?

Gracias.


AJPB
 

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
15/09/2004 - 17:58 | Informe spam
Tengo un control A que hereda al control B, al control A
le creo nuevas propiedades pero ademas quiero ocultar
algunas de las propiedades de la clase base ( B ). Como
podria lograr eso?



Dependiendo de si los metodos pueden o no sobreescribirse tienes dos formas.
Lo mejor es que el metodo en B este declarado como Overridable para poder
sobreescribirlo sin problemas y colocarle el atributo
<System.ComponentModel.EditorBrowsable(ComponentModel.EditorBrowsableState.N
ever)> para que no sea mostrado por intelisense. Si no esta declarado en B
como overridables deberas usar Shadows en la implementacion en A para
"sobreescribirlo" y ocultarlo con el atributo. El problema con esto ultimo
es que el metodo de B puede seguir ejecutandose en una instacia de A si
haces un cast del objeto al tipo A. En cambio si se usar
Overridable/Overrides aunque se haga el cast siempre se ejecutara el metodo
definido en A.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo

Preguntas similares