[How to] Agregar controles dinamicamente

En este post explicar cómo crear un control dinámicamente y agregarle un evento.

Para empezar, vale aclarar que, un control es una clase, es decir, podemos heredar e instanciar a partir de estas, teniendo claro esto, lo primero que haremos será crear una nueva instancia de la clase Button, así:

Button bt = new Button();

Una vez tenemos nuestro objeto en “blanco” es hora de definir sus propiedades, como su ID y el texto que contendrá, así:

bt.ID = "miBoton";
bt.Text = "Boton agregado en Runtime"; 

Ahora que nuestro objeto tiene un nombre y una apariencia, es hora de “pintarlo” en nuestro WebForm, esto lo hacemos así:

this.Page.Form.Controls.Add(bt);

Si ejecutamos ahora veremos que se crea el botón en pantalla, pero no hace nada, para que nuestro control haga algo es necesario crear un evento, así:

protected void bt_Clic(object sender, EventArgs e)
{
         Response.Write(@”<script language=’javascript’>alert(‘Funciona’);</script>”);
} 

Este evento escribirá un alert de lado del cliente cundo se haga click sobre el botón, pero ¿Cómo se le asigna este evento al control?, así:

bt.Click += new EventHandler(bt_Clic);

Esta es la forma en la que se agrega un evento de forma dinámica a una pagina aspx.

Espero les sea de utilidad.

Hasta el próximo post.

Anuncios
[How to] Agregar controles dinamicamente

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s