title: C# event is null
body: <p>I am just working on a project in which i need to raise and handle a custom event... i just simplified a little bit the code and got something like this:</p>
  
  <pre><code>class Car
  {
      public int Speed { get; set; }
  
      public delegate void SpeedTooHigh(string message);
  
      public event SpeedTooHigh OnSpeedToHigh;
  
      public Car(int speed)
      {
          this.Speed = speed;
  
          if (speed &gt;= 100)
          {
              if (this.OnSpeedToHigh != null)
              {
                  this.OnSpeedToHigh("Car has a too high speed !");
              }
          }
      }
  }
  </code></pre>
  
  <p>and the main class in which i am using this class:</p>
  
  <pre><code>class Program
  {
      static void Main(string[] args)
      {
          Car car = new Car(120, "Red", "Renault");
  
          car.OnSpeedToHigh += OnCarSpeedToHigh;
  
          Console.WriteLine("Test events");
  
          Console.ReadKey();
      }
  
      static void OnCarSpeedToHigh(string message)
      {
          Console.WriteLine(message);
      }
  }
  </code></pre>
  
  <p>When i am running this example it seems that all the time the "OnSpeedToHigh" is null in Car class.
   And i do not understand why since i am creating an instance of this class in main class and set  the speed to be greater the 100 so that "this.OnSpeedToHigh("Car has a too high speed !")" to be called. </p>
  
  <p>Is this enough for raising the event, to instantiate the class and set the speed to be greater the 100 for example ?</p>
  
  <p>Please let me know about this.</p>