Ci sono tre Timer
classi che sono a conoscenza di, System.Threading.Timer
, System.Timers.Timer
, e System.Windows.Forms.Timer
, ma nessuno di questi hanno una funzione .Reset()
che resettare il tempo trascorso corrente a 0.Come resettare un timer in C#?
C'è una classe che ha questa BCL funzionalità? C'è un modo non hack di farlo? (Ho pensato che forse la modifica del limite di tempo potrebbe ripristinarlo) Pensavo a quanto sarebbe stato difficile reimplementare una classe Timer
con questa funzionalità, o come farlo in modo affidabile con una delle classi BCL?
Utilizzo della soluzione di JP utilizzare un metodo di estensione – benPearce
Anche io ho lo stesso bisogno di ripristino e per gli stessi motivi menzionati, FileSystemWatcher è spiacevole e scomodo da usare –
Se si usa Cronometro per un timer e si va con il metodo di estensione risposta, si attento perché il metodo di estensione Stopwatch.Restart è in arrivo su .NET 4.0. http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.restart(VS.100,lightweight).aspx – si618