‫Muy bien, entonces, ¿qué es un delegado?
‫Bueno, en términos simples, un delegado es un tipo que puede tener una referencia a un método.
‫Y cuando llame a los delegados, se llamará al método al que se hace referencia.
‫Imagínese que estamos desarrollando una biblioteca de IU que otros desarrolladores pueden usar para crear aplicaciones móviles.
‫Y uno de los elementos de la interfaz de usuario que pueden utilizar otros desarrolladores es un botón.
‫Si miramos el código detrás de la clase de botón utilizada para crear el botón verde en la pantalla,
‫un botón como este tendrá las siguientes propiedades.
‫Una cadena llamada texto con el valor envió un color llamado color de fondo, que es algo verdoso y, por
‫supuesto, dos se llama cise w ansys h por el ancho y alto del botón.
‫Ahora, lo que falta aquí es un método que contiene el código que debe ejecutarse una vez que se hace clic en el
‫botón.
‫Ahora tenemos un problema aquí.
‫Nosotros, como desarrolladores que hicieron este sistema de interfaz de usuario, no podemos saber qué están usando los otros desarrolladores.
‫Nuestro sistema de interfaz de usuario quiere que el botón funcione cuando se hace clic en él.
‫Es por eso que debemos proporcionar el evento UNCLICK como delegado y no como un método normal.
‫Y dado que un delegado es una variable que puede almacenar una referencia a un método,
‫como escuchamos anteriormente, otros desarrolladores pueden escribir su propia implementación dentro de un método que contiene la lógica
‫que quieren que se ejecute al hacer clic y asignarla a los botones al hacer clic. evento de delegado que proporcionamos, nuestro único delegado
‫se puede definir así.
‫Así que ahora vamos a desglosarlo poco a poco, comenzaremos escribiendo el Axis Pacifier, esta palabra clave privada seguida de
‫la palabra clave delegado, que le dice al compilador que estamos definiendo un nuevo tipo.
‫Y finalmente, necesitamos especificar el tipo de métodos que nuestro delegado puede almacenar.
‫Y por tipo, me refiero al tipo de retorno y los parámetros de los delegados es el nombre del delegado que acabamos de
‫definir.
‫Ahora, el siguiente paso es crear una variable de su nuevo tipo de delegado.
‫Así que lo definimos como definimos cualquier variable en C sostenido comenzando con public, luego el tipo de variable que
‫estamos creando, que está en unclick delegate y por último, el nombre de la variable que está en.
‫Nuevamente, definimos una variable pública de tipo unclick delegate y la nombramos en Click.
‫Esta variable puede contener o almacenar una referencia a cualquier método siempre que tenga void como el tipo devuelto y no tome
‫ningún parámetro, de lo contrario obtendremos un error similar a cuando intentamos almacenar un flotante dentro de
‫una invariable.
‫Entonces, ¿cómo podemos usar este nuevo delegado?
‫Bueno, digamos que bebimos esa botella que dejó caer una botella en nuestro lienzo en el Edem que estamos usando para desarrollar esta aplicación móvil
‫usando nuestro sistema de interfaz de usuario, lo que resultó en la creación de un objeto de botón.
‫Supongamos que el nombre de este botón es botón de enviar.
‫Entonces, veamos primero la lógica que desea ejecutar cuando se hace clic en el botón.
‫En nuestro caso, queremos conectarnos a la red, enviar el mensaje y mostrar un mensaje al usuario.
‫Así que ahora tenemos un método normal llamado enviar clic en el botón que aún no está conectado al botón de ninguna
‫manera.
‫Para solucionarlo, debemos asignar nuestro método a la variable unclick de tipo unclick delegate.
‫Tenga en cuenta que escribimos el nombre de nuestro método sin los corchetes, porque no lo estamos llamando,
‫solo estamos almacenando su referencia en el delegado de unclick ahora debajo del capó, si el mouse estaba sobre
‫el botón y se hizo clic en el mouse, nuestro sistema de interfaz de usuario llamará al delegado de un clic de nuestro botón de enviar.
‫Eso, a cambio, llamará a cualquier método que se le haya asignado.
‫En este caso, llamará al clic del botón enviar y el cuadro de diálogo del mensaje enviado se mostrará de esta manera.
‫Quien use nuestro sistema de interfaz de usuario puede crear sus propios métodos, luego asignar sus métodos a nuestro delegado
‫y podemos llamarlos cuando las condiciones sean las adecuadas.
‫No estamos limitados a hacer clic en eventos.
‫Incluso podemos crear delegados para cuando la aplicación se inicie o se cierre, por ejemplo.
‫Bueno, este fue un ejemplo muy estricto, pero este es un caso de uso real de los delegados en general.
‫Entonces, a continuación, aprenderemos cómo usar uno de los delegados que ya existe en C Sharp.
‫Y después de eso, comenzaremos a crear nuestros propios delegados, de manera similar a como lo hicimos en este ejemplo.
‫Así que nos vemos en el siguiente video.