none
Consultar si se modifico textbox y richtextbox RRS feed

Todas las respuestas

  • Hola. Ambos controles implementan el evento TextChanged.
    http://msdn.microsoft.com/es-es/library/system.windows.forms.control.textchanged.aspx
     
    Te puedes subscribir a dicho evento y en el delegado realizas lo que tengas
    que hacer. Por ejemplo:
     
    TextBox text = new TextBox();
    text.TextChanged += (s, a) => MessageBox.Show("Texto cambiado a " + (s as
    TextBox).Text);
    text.Text = "Hola mundo!"; // muestra mensaje "Texto cambiado a Hola mundo!"
     
    Espero os sirva.
     
    Saludos.
     
     


    Fernando Gómez
    fermasmas.wordpress.com
    jueves, 3 de junio de 2010 22:52
  • hola

    imagino que apuntas a validar si el form los controles cambiaron para luego desplegar el clsico mensaje "Desea salir sin guardar los cambios?"

    en ese caso podrias suar el evento GotFocus y LostFocus de los controles que mencionas

    cuando entras en el control guardas en una variable (definida a nivel del formulario) el contenido y cuando sales comparas este valor con el actual, si es distinto prender el flag (otra variable privada al form del tipo bool) que indica que el form hay cambios

    esto lo haces para ambos controles

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    viernes, 4 de junio de 2010 3:34
  • Si me lo permiten, y partiendo de la idea de Leandro Tuttini, particularmente soy reacio a usar variables anivel de formulario para la tarea que nos ocupa, esto implicaría tener que crear varias(muchas?) variables, en función de la cantidad de controles que a los que desamos seguirle la pista. Mi opinión es usar la propiedad Tag del control. En el código donde cargas los datos en los controles, añades a la propiedad Tag el valor cargado, esto permite comparar Tag con Text al validar, sin necesidad de crear variables.
    viernes, 4 de junio de 2010 9:22