Ich arbeite an einer C # Windows Forms-Anwendung, wo ich die Methode für 30 Sekunden pausieren muss, bis es zur nächsten Codezeile weitergeht. Ich habe versucht, Thread.Sleep()
, die für diese Anwendung nicht geeignet war und ich habe verstanden, dass ich stattdessen eine Art Timer verwenden sollte. Ich habe viel gesucht, aber ich kann nicht herausfinden, wie Timer zu implementieren sind.
Mein Code ist unten und könnte mir jemand zeigen, wie ich den Timer implementieren soll. Ich habe einen Kommentar dazu abgegeben, wo die Methode angehalten werden soll.
%Vor% Wenn Ihre App eine .Net 4.5-Anwendung ist, ist es etwas einfacher, Task
zu verwenden:
Task.Delay ist in .NET 4.0 nicht verfügbar, aber Sie können die Task starten, die nur für 30 Sekunden inaktiv ist. Später können Sie den UI-Thread erneut fortsetzen:
%Vor% Definieren Sie auf Klassenebene eine Instanz von Timer
(Es gibt ein paar Klassen wie diese - für eine Winforms-App sollten Sie System.Windows.Forms.Timer
verwenden)
Fügen Sie dann in Ihrer Methode Zeilen hinzu, um das Häkchen zu bearbeiten und starten Sie es:
%Vor%