Si usamos System.Timers.Timer en una aplicación de WPF, debemos tener en cuenta que System.Timers.Timer se ejecuta en un subproceso diferente del subproceso de interfaz de usuario (UI) y esto nos puede dar problema a la hora de ejecutarse al no poder despacharse.
En lugar de eso usaremos DispatcherTimer el cual se ejecutará en el mismo subproceso que Dispatcher dándole a este una prioridad y haciendo que se ejecute en el momento apropiado.
// DispatcherTimer setup dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
dispatcherTimer.Start();
// DispatcherTimer update void dispatcherTimer_Tick(object sender, EventArgs e)
{
if (!IsLocked())
lblLocked.Visibility = System.Windows.Visibility.Collapsed;
}
Por mas info les dejo el link del msdn DispatcherTimer
No hay comentarios:
Publicar un comentario