Zasadniczo, gdy stosujemy pewien interwał, tj. 5 sekund, musimy na to poczekać.DispatcherTimer stosuje interwał i wykonuje natychmiast
Czy można natychmiast zastosować interwał i wykonać timer i nie czekać 5 sekund? (Mam na myśli czas przerwy).
Jakaś wskazówka?
Dzięki!
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();
}
}
Jeśli chcesz, aby coś od razu nastąpiło, dlaczego nie po prostu wykonać go natychmiast? – dlev
@dlev Prawo Ale chcę zobaczyć bardziej elegancki sposób ... –
Nie widzę, co jest nieeleganckie w wywołaniu metody bezpośrednio. Prawdopodobnie powinieneś stworzyć nową metodę, która jest wywoływana w obu miejscach, ale pomysł jest taki sam: jeśli chcesz, aby coś teraz się wydarzyło, to po prostu to zrób! – dlev