none
Deshabilitar botón en el evento click para evitar otras activaciones RRS feed

  • Pregunta

  • En Windows forms, tengo un formulario con muchos botones.
    Todos tienen asociado un evento ButtonClickOneEvent, que realiza un acción.

    La idea es deshabilitar el botón cuando el usuario pulsa el click, y cuando finalice la ejecución del código , volver a habilitarlo (muy importante que vuelva  a quedar habilitado).

    public void ButtonClickOneEvent(object sender, EventArgs e)
            {
                var button = sender as DevExpress.XtraEditors.SimpleButton;
                if (button == null) return;
                var name = "";
                try
                {
                    name = button.Name;
                    Console.WriteLine("Button " + name);
                    var methodName = name + "_ActionButton";
                    MethodInfo mi = this.GetType().GetMethod(methodName);
                    mi.Invoke(this, null);
                    TrackButton(button);
                }
                catch (Exception ex)
                {
                    var msg = "ERROR ACCION " + name + ". " + ex.Message;
                    DevExpress.XtraEditors.XtraMessageBox.Show(msg, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    TrackButton(button, msg);
                }
            }

    jueves, 1 de agosto de 2019 8:05

Todas las respuestas