none
evento leave se ejecuta tarde RRS feed

  • Pregunta

  • estoy haciendo una ventana con teclas de funcion (hot keys), deseo que el usuario se maneje solo con teclado, no con el mouse (2 dedos vs. 10 dedos)

    con una funcion se ingresa a un textbox para rellenarlo, pero deseo que la info de dicho textbox se grabe y no quiero poner un boton para hacerlo, entonces pense que en el evento leave podria poner que se grabara.

    en la practica cuando apreto otra funcion se ejecuta:

    1) otra funcion

    2) leave

    probé con lostfocus pero pasa lo mismo

    mi problema es que esa "otra funcion" cambia el contenido del formulario (cambia lo que estaba ingresando el el textbox)

    y pierdo la modificacion

    existe algun evento que se ejecute en el mismo instante de salir o perder el foco de un textbox ?


    Hugo González (Macgyber)

    sábado, 26 de agosto de 2017 14:36

Respuestas

  • Si el evento Leave es consecuencia de presionar la tecla F2, ¿por qué no ejecutas las instrucciones que tienes escritas en el controlador del evento Leave antes del "método" que mencionas se ejecuta al capturar la tecla F2?


    Nuestra profesión exige tener pasión por resolver problemas de una manera óptima y eficiente.
    • Marcado como respuesta macgyber sábado, 26 de agosto de 2017 22:54
    sábado, 26 de agosto de 2017 19:06

Todas las respuestas

  • ¿Cómo estás intentando producir el evento Leave?, mencionas "cuando aprieto otra función", ¿no basta con presionar la tecla ENTER o la tecla TAB para perder el foco y en consecuencia producir el evento Leave?, o controlar la pulsación de la tecla ENTER -para guardar los cambios- en el evento KeyPress.


    Nuestra profesión exige tener pasión por resolver problemas de una manera óptima y eficiente.
    sábado, 26 de agosto de 2017 16:41
  • al apretar F2 mediante : protected override bool ProcessCmdKey(ref Message msg, Keys keyData)

    la capturo y ejecuto un método.

    pero recien cuando termina de ejecutar este método se produce el leave.

    como podría hacer para que se ejecutara el leave antes ?


    Hugo González (Macgyber)

    sábado, 26 de agosto de 2017 17:50
  • Si el evento Leave es consecuencia de presionar la tecla F2, ¿por qué no ejecutas las instrucciones que tienes escritas en el controlador del evento Leave antes del "método" que mencionas se ejecuta al capturar la tecla F2?


    Nuestra profesión exige tener pasión por resolver problemas de una manera óptima y eficiente.
    • Marcado como respuesta macgyber sábado, 26 de agosto de 2017 22:54
    sábado, 26 de agosto de 2017 19:06