Control personalizado ASP.NET TextBoxNumerico
Extensi�n del objeto System.Web.UI.WebControl.TextBox para solamente aceptar valores numeros del teclado en aplicaciones ASP.NET
 

Fecha: 16/Oct/2004 (14/Oct/2004)
Autor: Haaron Gonzalez, e-mail: [email protected],
weblog: http://weblogs.golemproject.com/hgonzalez/

 


Introducci�n

Con base en el art�culo Control personzalido ASP.NET MessageBox en donde se muestra como crear un control de servidor personalizado con funcionalidad messagebox en ASP.NET se me ocurri� crear una serie de art�culos en donde veremos poco a poco como incrementar nuestra fundaci�n de controles de servidor personalizados en ASP.NET. En este art�culo usamos el mismo principio del art�culo  Control personzalido ASP.NET MessageBox para crear un nuevo control que hereda del objeto System.Web.UI.WebControl.TextBox y as� extender su funcionalidad para solamente  aceptar valores num�ricos del teclado en un textbox.

La Soluci�n

Para fines pr�cticos y de seguimiento utilizaremos la soluci�n y proyectos creados en el art�culo Control personzalido ASP.NET MessageBox as� que si no cuentas con ello empieza por ah� y cuando termines deber�s contar con la siguiente estructura:

Selecciona el proyecto ControlesWeb creamos una clase de nombre:  TextBoxNumerico y escribimos el siguiente c�digo:

En este c�digo vemos la definici�n de dos constantes privadas de tipo string:

Sobrescribimos el sub procedimiento Render para escribir c�digo encargado de asociar el javascript al control TextBox a trav�s de la colecci�n Attributes. Por cierto el sub procedimiento Render env�a el contenido del control a un objeto de tipo HtmlTextWriter el cual escribe una serie secuencial de caracteres HTML y texto en una pagina de formulario Web. La clase HtmlTextWriter provee de capacidades de formato que los controles de servidor ASP.NET utilizan cuando se renderiza contenido HTML en el cliente.

Una vez escrito el c�digo compilemos el proyecto y generamos una nueva versi�n del archivo ControlesWeb.dll ubicado en el f�lder Bin del proyecto ControlesWeb.   

En el proyecto TestControlesWeb y agrega un nuevo formulario llamado WebForm2.aspx y expande el elemento References y seleccionamos ControlesWeb damos clic derecho y lo removemos. Ahora seleccionamos y damos doble clic en el WebForm2.aspx y en la ventana Toolbox presiona bot�n derecho del rat�n y damos clic para seleccionar la opci�n Add and Remove Items.

 

NOTA: Ya contamos con dos controles de servidor personalizados.

Ahora con solo arrastrar y soltar el control se mostrara en el formulario Web nuestro control personalizado, debido a que este nuevo control hereda del control TextBox cuenta con todas las propiedades originales del control TextBox.

Ahora tienes todo listo para ejecutar la aplicaci�n y ver funcionando tu control personalizado TextBoxNumerico al escribir texto sobre el control ver�s que no acepta ning�n valor solamente n�meros. 

Conclusi�n

En este art�culo vimos como extender la funcionalidad del control System.Web.UI.WebControl.TextBox para agregar el javascript que permita solamente aceptar del teclado valores num�ricos cuando el usuario proporciona informaci�n.


ir al índice