title: Should a delegate be declared inside the class that will raise the event, or outside?
body: <p>I have seen various examples of event handling. Here is one: <a href="http://msdn.microsoft.com/en-us/library/9aackb16%28v=vs.71%29.aspx" rel="noreferrer">Event Sample</a>.</p>
  
  <p>Sometimes I see the delegate declared outside the class that will raise the event (as in the link above), and sometimes inside (where <em>I</em> think it should be declared).</p>
  
  <p>It makes more sense to me to declare the event <em>inside</em> the class that will raise the event. The reason being that the event that the class will declare is really just some sugar coating for helper methods etc. that are really doing the adding to, subtracting from, and invoking of the delegate etc.</p>
  
  <p>Are there any best practices? Are there times when you would want to declare the delegate outside, and other times where you would want to declare the delegate inside? If so, how should it be decided which to do?</p>