title: How do I find out if a particular delegate has already been assigned to an event?
body: <p>I have a command button on a winform. So, if I have something like:</p>
  
  <pre><code>myButton.Click += MyHandler1;
  myButton.Click += MyHandler2;
  myButton.Click += MyHandler3;
  </code></pre>
  
  <p>How can I tell if any particular MyHandler has already been added to the Click event so it doesn't get added again somewhere else in my code?</p>
  
  <p>I've read how you can use GetInvocationList() for your own event's information. But I get errors when trying to get the items for my command button using various combinations. It says, </p>
  
  <blockquote>
    <p>"The event
    'System.Windows.Forms.Control.Click'
    can only appear on the left hand side
    of += or -=."</p>
  </blockquote>
  
  <p>What am I missing?</p>
  
  <p>[Edit] - I'd like to accentuate <a href="https://stackoverflow.com/questions/660480/determine-list-of-event-handlers-bound-to-event">this question</a> that Ahmad pointed out. It's a kludge and should be easier IMHO, but it looks like it might just work. </p>