Evitar excepciones "Cross-thread operation not valid"


Evitar las excepciones del tipo: Cross-thread operation not valid es bastante sencillo. Estas se dan al acceder a un control gráfico desde un hilo distinto al hilo propietario del control, osea, el que lo creó.
Para evitar este problema se deben realizar las llamadas del siguiente modo.
[csharp]

        internal void AllowReboot(bool allow)
        {
            if (this.InvokeRequired)
            {
                this.Invoke((MethodInvoker)delegate
                {
                    AllowReboot(allow);
                });
                return;
            }
            cmdStart.Visible = allow;
        }

[/csharp]

No hay comentarios:

Publicar un comentario