namespace System.Windows.Forms { public class Timer : IDisposable { private System.Windows.Threading.DispatcherTimer timer; public int Interval { get => (int)timer.Interval.TotalMilliseconds; set => timer.Interval = TimeSpan.FromMilliseconds(value); } public bool Enabled { get => timer.IsEnabled; set => timer.IsEnabled = value; } public event EventHandler Tick; public void Start() { Enabled = true; } public void Stop() { Enabled = false; } public void Dispose() { Stop(); } public Timer() { timer = new(); timer.Tick += (sender, e) => Tick?.Invoke(this,e); } ~Timer() { Dispose(); } } }