domingo, octubre 17, 2021

Utilizando la Herencia en los Mantenimientos (Forms) – Parte 2

En este ejemplo vamos a continuar el ejemplo 1 publicado hace un mes, y ahora vamos a indicar como poder ejecutar el evento de los botones desde el form que hereda a la forma base.

Descargar solución Herencia-En-Forms-2.zip

En la forma base vamos indicarle dos eventos públicos Aceptar y Cancelar que luego podrán ser invocados por la forma que herede de FormaBase

En FormaBase.vb

#Region » Eventos Públicos «

'Estos eventos permiten que puedan ser llamados desde la
'forma que está heredando
'revisar el evento de los botones
Public Event Aceptar()
Public Event Cancelar()

#End Region

Luego en el evento de los botones Aceptar y Cancelar en la Forma Base le indicamos lo siguiente

#Region » Manejo de Eventos «

Private Sub btnAceptar_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnAceptar.Click
'aqui se le indica que invoque el evento Aceptar que deberia
'ser invocado en la forma que hereda
RaiseEvent Aceptar()
End Sub

Private Sub btnCancelar_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnCancelar.Click
'aqui se le indica que invoque el evento Cancelar que podria
'ser invocado en la forma que hereda
RaiseEvent Cancelar()
Me.Close()
End Sub

#End Region

Como podemos observar en el evento de los dos botones llamamos al evento público correspondiente, que va a ser el que nos permita ejecutarlos en la forma que hereda.

Ahora en la forma Mi_Mantenimiento.vb le indicamos que herede de FormaBase

Imports System.Windows.Forms

Public Class Mi_Mantenimiento
Inherits FormaBase

Luego en los eventos de Mi_Mantenimiento podremos encontrar los dos eventos públicos de la forma base y los podremos invocar seleccionandolos del combo de eventos en la parte superior

Para poder utilizarlos de la siguiente forma en nuestro resultado final

Private Sub Mi_Mantenimiento_Aceptar() Handles MyBase.Aceptar
MsgBox(«Usted presionó Aceptar»)
End Sub

Private Sub Mi_Mantenimiento_Cancelar() Handles MyBase.Cancelar
MsgBox(«Usted presionó Cancelar»)
End Sub

Ahora podremos tener aplicaciones uniformes que puedan cumplir estándares de calidad mucho más altos.

Descargar solución Herencia-En-Forms-2.zip




Artículo anteriorCurso de C# – Día 2
Artículo siguienteMétodo de ordenamiento Shell
Roy Rojashttp://www.dotnetcr.com
Con más de 20 años de experiencia en programación, experto en lenguajes .NET, VB, C#, ASP.NET, Xamarin, XCode, DBA en SQL Server. Creador de dotnetcr.com, sitio web para programadores en español. royrojas.com | dotnetcr.com | GitHub

Redes Sociales

2,736FansMe gusta
326SeguidoresSeguir

Popular esta semana

SQL Server - Merge

MERGE en SQL Server para Insert, Delete y Update con dos tablas

Ejemplo práctico usando MERGE para sincronizar dos tablas, Insert, Update y Delete en un solo query. Válido para SQL SERVER 2008 o superior.

Calcular la distancia entre dos puntos geográficos en SQL Server

En este ejemplo mostramos como calcular la distancia en metros o kilómetros entre dos puntos geográficos, por latitud y longitud. El resultado lo obtenemos en metros o kilómetros.

SQL Server: Error 3414, servicio no inicia

El error 3414 se produce generalmente cuando el motor de la base de datos SQL Server sufre algún evento imprevisto. Aquí lo solucionamos.

Últimos artículos

Flutter - Instagram Clone App

Instagram Clone App con Flutter

Marvin Stanley Valenzuela nos comparte un reto y genialidad a la vez, excelente práctica de la que podemos aprender mucho, diseñó en...

¿Cómo agregar una IP adicional en una VM Ubuntu en Azure?

Lo más común al momento de crear y configurar un nuevo servidor es que a este le asigne un solo IP, pero...
flutter one year

Después de un año con Flutter, esto es lo que aprendí

La historia comenzó cuando un día desperté pensando en tener un nuevo proyecto personal. Me dije a mí misma que hay muchas...
promocionar app

Cómo promocionar gratis tu app usando tappx

Como todos los que me siguen y mis redes sociales sabrán, recientemente lancé mi primera aplicación, pero más allá del desafío tecnológico de...