title: Timer not starting
body: <p>So i want to check the current <code>time</code> every second and if <code>seconds == 0</code> raise <code>event</code> and show current time:</p>
  
  <pre><code>using System.Timers;
  
  public delegate void TimeHandler(object sender, TimeEventArgs e);
  
  public class Clock
  {
      private Timer timer;
      public event TimeHandler CurrentTime;
  
      public Clock()
      {
          timer = new Timer();
          timer.Elapsed += timer_Elapsed;
          timer.Interval = 1000;
      }
  
      public void Start()
      {
          timer.Enabled = true;
          timer.Start();
      }
  
      private void timer_Elapsed(object sender, ElapsedEventArgs e)
      {
          DateTime time = DateTime.Now;
          int sec = time.Second;
          if (sec == 0)
              if (CurrentTime != null)
                  CurrentTime(this, new TimeEventArgs(time));
      }
  }
  
  public class TimeEventArgs
  {
      public readonly DateTime Time;
  
      public TimeEventArgs(DateTime time)
      {
          Time = time;
      }
  }
  </code></pre>
  
  <p>Usage:</p>
  
  <pre><code>Clock clock = new Clock();
  clock.CurrentTime += Clock_CurrentTime;
  clock.Start();
  
  private static void Clock_CurrentTime(object sender, TimeEventArgs e)
  {
      Console.WriteLine(e.Time.ToShortTimeString());
  }
  </code></pre>
  
  <p>But it seems like the timer elapsed not starting.</p>