Usar métodos de extensión

Estos métodos permiten agregar funcionalidades especiales a los controles que se exponen en los formularios.
Para ponerlo a prueba vamos a crear tres funciones que nos van a permitir obtener el contenido de un TextBox como un valor de tipo fecha, entero y decimal.
Estos métodos puedes implementarlos en alguna de tus clases estáticas.

        /// <summary>

        /// Devuelve un valor del tipo Fecha desde el contenido de un TextBox

        /// Si el valor no es una fecha válida obtiene el valor mínimo para una fecha

        /// </summary>

        /// <param name=”txt“></param>

        /// <returns></returns>

        public static DateTime ToDate(this TextBox TextValue)

        {

            DateTime idate = DateTime.MinValue;

            DateTime.TryParse(TextValue.Text, out idate);

            return idate;

        }

 

        /// <summary>

        /// Devuelve un valor del tipo entero desde el contenido de un TextBox

        /// Si el valor no es un entero válido obtiene el valor mínimo para un entero

        /// </summary>

        /// <param name=”TextValue“>Valor entrado en el TextBox</param>

        /// <returns></returns>

        public static int ToInteger(this TextBox TextValue)

        {

            int iInt = int.MinValue;

            int.TryParse(TextValue.Text, out iInt);

            return iInt;

        }

 

        /// <summary>

        /// Devuelve un valor del tipo double desde el contenido de un TextBox

        /// Si el valor no es un double válido obtiene el valor mínimo para un double

        /// </summary>

        /// <param name=”TextValue“>Valor entrado en el TextBox</param>

        /// <returns></returns>

        public static double ToDouble(this TextBox TextValue)

        {

            double iDbl = double.MinValue;

            double.TryParse(TextValue.Text, out iDbl);

            return iDbl;

        }

Crea un formulario con el que poner a prueba tus métodos e extensión, puede ser parecido al siguiente:

En el evento clic de los botones agrega el siguiente código:

       private void button1_Click(object sender, EventArgs e)

        {

            var fecha = this.txtFecha.ToDate();

            this.lblFecha.Text = fecha.AddDays(1).ToString(“dddd, dd – MMM – yyyy”);

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

            var entero = this.txtEntero.ToInteger();

            this.lblEntero.Text = (entero * 2).ToString();

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

            var dbl = this.txtDouble.ToDouble();

            this.lblDouble.Text = (dbl * 2).ToString();

        }

Pon a prueba el formulario. Verás que si el valor no es correcto obtienes el valor mínimo para el tipo de dato.

Aquí un pequeño ejemplo:

Ponlo a prueba, piensa en cómo mejorarlo y comparte con nosotros tus progresos.

Scroll al inicio
Abrir chat
1
Hola
¿En qué podemos ayudarte?