Básicamente cuando aplicamos algún intervalo, es decir, 5 segundos, tenemos que esperarlo.DispatcherTimer aplicar intervalo y ejecutar inmediatamente
¿Es posible aplicar el intervalo y ejecutar el temporizador inmediatamente y no esperar 5 segundos? (me refiero al tiempo de intervalo).
¿Alguna pista?
Gracias!
public partial class MainWindow : Window
{
DispatcherTimer timer = new DispatcherTimer();
public MainWindow()
{
InitializeComponent();
timer.Tick += new EventHandler(timer_Tick);
this.Loaded += new RoutedEventHandler(MainWindow_Loaded);
}
void timer_Tick(object sender, EventArgs e)
{
MessageBox.Show("!!!");
}
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
timer.Interval = new TimeSpan(0, 0, 5);
timer.Start();
}
}
Si desea que ocurra algo inmediatamente, ¿por qué no ejecutarlo inmediatamente? – dlev
@dlev Right Pero quiero ver una forma más elegante ... –
No veo lo poco elegante que es llamar directamente a un método. Probablemente deberías crear un nuevo método, que se llama en ambos lugares, pero la idea es la misma: si quieres que ocurra algo ahora, ¡hazlo! – dlev