Formularios Heredados.

21/04/2009 - 07:37 por Rafael Villaran. RAVIPE | Informe spam
Hola a todos.
He creado un formulario base para usarlo como plantilla en otros, que me
evite código repetido. Bien todo va perfecto salvo en una cuestión:

Dentro de este formulario base o plantilla he creado varios métodos. Me
gustaría que cuando yo cree un nuevo formulario que herede de este me obligue
a sobreescribir dichos métodos, aunque no ponga código.

Actualmente tengo los métodos en el base declarados como virtual y en
los formularios que heredan con override, pero esto no me obliga a crearlos.
Si no pongo uno de los métodos la aplicación no me peta.
También he creado una Intefaz que la referenciaba en el formulario base.
Como en este ya están declarados los métodos pués tampoco petaba. ¿Alguien
sabe si se puede hacer estos?.

Saludos a todos y gracias por vuestro tiempo.
 

Leer las respuestas

#1 Alberto Poblacion
21/04/2009 - 08:30 | Informe spam
"Rafael Villaran. RAVIPE"
wrote in message news:
Dentro de este formulario base o plantilla he creado varios métodos.
Me
gustaría que cuando yo cree un nuevo formulario que herede de este me
obligue
a sobreescribir dichos métodos, aunque no ponga código.

Actualmente tengo los métodos en el base declarados como virtual y en
los formularios que heredan con override, pero esto no me obliga a
crearlos.





Para esto existe la palabra "abstract". Los métodos que tienes como
"virtual" tienes que cambiarlos a "abstract", y para que eso compile, la
clase que los contiene también tiene que ser abstract. Con eso te obliga a
hacerles un override en las clases hijas. También vale para los métodos de
la interfaz, cuya implementación puedes igualmente marcar como abstracta.
Una pega: Si la clase base es un formulario windows, el diseñador de
Visual Studio ya no será capaz de abrir el formulario en modo diseño después
de marcarlo como abstracto. Es un fallo que tiene.

Preguntas similares