title: Why do we need the "event" keyword while defining events?
body: <p>I don't understand why do we need the "event" keyword while defining events, when we can do the same thing without using "event" keyword, just by using the delegates.</p>
  
  <p>e.g.</p>
  
  <pre><code>public delegate void CustomEventHandler(int a, string b);
  public event CustomEventHandler customEvent;
  customEvent += new CustomEventHandler(customEventHandler);
  customEvent(1,"a"); // Raising the event
  </code></pre>
  
  <p>Here if I remove the "event" keyword from the second line, then also I can raise the event by invoking the delegate. Can anybody please tell me why is this event keyword needed ?</p>