Ideas, vivencias y demás
Peru Blogs

August 24, 2006

Un blog para revisar

Dentro de lo desinformado que estoy, puesto que muchas veces ya no me da ganas ver los noticieros y relacionados, ya que siempre asesinatos, suicidios, violaciones, politicos corruptos, policias corruptos, son expuestos con tanta frecuencia que para mi preocupación, ya me había (he) acostumbrado; siempre hubo un periodista que me despertó respeto, el sr César Hildebrant. Hoy dí con su blog oficial, junto con otros blog que lo citan y transcriben. Dense un tiempo y denle una mirada, esta interesante.

 salu2.

August 21, 2006

TextBox con Formato

Filed under: Otros

Encontré el FormattedTextBox en el guille, como una colaboración de un tercero. Es bastante útil y aparte de la dll, esta disponible el código. Con este control me olvido de estar pendiente de lo que los usuarios puedan teclear :D en gran medida. Basta con indicarle si quieres solo numeros, letras, etc.

PD 1: Lo he utilizado siempre sobre el framework 2.0. No lo he probado sobre el 1.1
PD 2: El artículo es de hace 4 años, asi que, si alguien lee este blog, y ese alguien tiene info de algún simil a éste control, me avisa :D .

August 18, 2006

Algo curioso…

Filed under: Otros

Nawebeando por la red, me topé con un blog entretenido donde rezongar (http://buscon.rae.es/draeI/ : Gruñir, refunfuñar a lo que se manda, ejecutándolo de mala gana.) es la consigna.

Bueno, encontre una referencia a una web donde supuestamente valorizan tu blog en dolares, aca el resultado:


My blog is worth $564.54.
How much is your blog worth?

en fin, no se cómo lo harán, aparte que está en inglés y me da pereza entenderle, así que como pa subirse la moral habrá que creerles pes. :D

Para limpiar varios textbox

Filed under: Otros, C#

Algo que sucede a menudo es que teniendo una considerable cantidad de cajas de texto, necesitamos en algun momento "limpiarlas" (término que me enseño mi profesor de la U, en los primeros ciclos, y se me quedó :) ), esto es, poner la propiedad Text = ""; simple y sencillo, pero engorroso para varias cajas como al inicio mencionaba. Para esto, uso un foreach para recorrer una coleccion de controles, en busca de las tipo TextBox, para ponerles el Text a "". Así, supongamos que estamos en la clase clsUtilitario.cs:

using System.Windows.Forms; // para poder usar Control

… namespace y demas codigo que puedes tener …

public static void LimpiarCajas(Control.ControlCollection coleccionControles)
{
    foreach (Control control in coleccionControles)
        {
            if (control.GetType().ToString() == "System.Windows.Forms.TextBox")
                { control.Text = ""; }
        }
}

Ahora, de cualquier lugar, solo necesitas pasarle una coleccion de controles, tal y como especifica el parametro Control.ControlCollection coleccionControles.

Por decir, para los textbox de un groupbox:
    clsUtilitario.LimpiarCajas(gbxGrupo.Controls);

o los textbox de todo un formulario:
    clsUtilitario.LimpiarCajas(frmFormulario.Controls)

Si a alguien le sirve, en buena hora. Salu2.

August 13, 2006

Controlar eventos desde un mismo método

Filed under: Otros, C#

Bien, pues varias veces me he topado con que tengo que hacer tareas muy parecidas desde distintos controles ante un mismo evento sobre cada uno de ellos. Esto me genera trozitos de codigo que cambian a veces muy poco uno de otro y dan "un mal aspecto" al código :( . Pues, recordando lo que un amigo me comentaba que hacía: ún solo metodo el cual responda por lo eventos de un conjunto común de controles, decidi implementarlo y me esta sirviendo. Va algo asi: (no es nada del otro mundo, pero espero a alguien le sirva ;) )

Este ejemplo es el más didáctico y conciso, tan sencillo como el HelloWorld :D . En un formulario donde deseas validar la identidad de un usuario, deseas tambien que si pulsas ENTER sobre cualquiera de las cajas (de nick o pass), llamar al metodo correspondiente al evento Click del boton validar.

PRIMERO: Agregamos un formulario, dos cajas de texto (txtNick, txtPass) y un boton btnValidar. Esto es fácil con el potente, usable, ligero y económico IDE para programar sobre sobre el Framework o Mono (obviamente no hablo de VisualStudio.Net xD, básicamente por las dos últimas características), es decir, SharpDevelop.

SEGUNDO: Programamos el evento Click del btnValidar, con algo como:

        void BtnValidarClick(object sender, System.EventArgs e)
        {
            // Ese será nuestro supuesto super código de validación de usuario xD
            MessageBox.Show("Bienvenido…!!!");
        }

TERCERO: Crearemos el metodo que manejará los click en las cajas:
    - object sender: es el control sobre el cual se ejecuta el evento.
    - System.Windows.Forms.KeyPressEventArgs e: es el evento que se ejecuta sobre el "sender". Usaremos KeyPressEventArgs porque vamos a responder ante un enter con el metodo que creamos en [SEGUNDO].
    - y porque BtnValidarClick(null,null). Le ponemos null, porque no nos interesa en el btnValidar trabajar con el control y su evento disparado, así que para no hacernos problemas, lo llamamos asi.

        void MetodoEnterEnCajas(object sender, System.Windows.Forms.KeyPressEventArgs e)
        {
            if(e.KeyChar == 13) // es enter???
            {
                this.BtnValidarClick(null,null);
            }
        }

CUARTO: Por último, es cuestion de ir a la ventana Propiedades/Eventos, y elegir el KeyPress, desplegar el combo y elegir "MetodoEnterEnCajas" para cada una de las cajas.

Ahora, ya esta listo, escribes tu usuario, le das enter, y llama ya al evento click del boton. Igual si lo haces en la caja de contraseña. Primero, ahorraste 1 método, porque si programas el contenido de MetodoEnterEnCajas en cada caja, tendras tantos métodos como en cajas lo hayas puesto, y segundo, se ve mas ordenado. =)

Ahora, esto se puede usar para validaciones de varias cajas de texto, control de los click en un menu, etc. Espero les sirva.

Salu2.

PS: Repito, el ejemplo es excesivamente sencillo, pero considero las diversas aplicaciones que implica son escalables en sobremanera :D .






















Get free blog up and running in minutes with Blogsome
Theme designed by Hadley Wickham