Il y a trois Timer
cours que je suis au courant, System.Threading.Timer
, System.Timers.Timer
et System.Windows.Forms.Timer
, mais aucun d'entre eux ont une fonction .Reset()
qui réinitialiser le temps écoulé actuel à 0.Comment réinitialiser une minuterie en C#?
Y at-il une classe BCL qui a cette fonctionnalité? Y a-t-il une façon non-hack de le faire? (Je pensais que peut-être changer la limite de temps sur elle pourrait le réinitialiser) Pensé sur combien il serait difficile de réimplémenter une classe Timer
qui avait cette fonctionnalité, ou comment le faire de manière fiable avec l'une des classes BCL?
En utilisant la solution de JP utiliser une méthode d'extension – benPearce
J'ai aussi le même besoin de réinitialisation et pour les mêmes raisons mentionnées, FileSystemWatcher est désagréable et incommode à utiliser –
Si vous utilisez Chronomètre pour une minuterie et aller avec la méthode d'extension réponse, soyez attention parce que la méthode d'extension Stopwatch.Restart arrive dans .NET 4.0. http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.restart(VS.100,lightweight).aspx – si618