title: Add Event Handler via Reflection.EventInfo
body: <p>I have a simple setup overhere:</p>
  <pre><code>public class SomeEventArgs : EventArgs
  {
      // blablabla
  }
  
  public delegate void SomeEventHandler(object sender, SomeEventArgs e);
  
  public class SomeClass
  {
      public event SomeEventHandler SomeEvent;
  
      public void RaiseEvent()
      {
          SomeEvent?.Invoke(this, new SomeEventArgs());
      }
  
  }
  </code></pre>
  <p>A custom class with a custom event with custom event args.</p>
  <p>So, in my main code:</p>
  <pre><code>public partial class Form1 : Form
  {
      public Form1()
      {
          InitializeComponent();
      }
      
      private void Form1_Load(object sender, EventArgs e)
      {
  
          SomeClass a = new SomeClass();
          a.SomeEvent += A_SomeEvent; // &lt;-- this works fine
          a.SomeEvent += A_SomeEvent1; // &lt;-- this works also fine
  
          EventInfo someEventInfo = a.GetType().GetEvent(&quot;SomeEvent&quot;);
          someEventInfo.AddEventHandler((object)a, Delegate.CreateDelegate(typeof(SomeEventHandler), (object)this, &quot;A_SomeEvent&quot;)); // &lt;-- this works fine
          someEventInfo.AddEventHandler((object)a, Delegate.CreateDelegate(typeof(EventHandler), (object)this, &quot;A_SomeEvent1&quot;)); // &lt;-- ArgumentException Error
  
          a.RaiseEvent();
  
      }
  
      private void A_SomeEvent(object sender, SomeEventArgs e)
      {
          MessageBox.Show(&quot;Some Event Raised!&quot;);
      }
      private void A_SomeEvent1(object sender, EventArgs e)
      {
          SomeEventArgs args = (SomeEventArgs)e; // &lt;-- this is how i could get the real event args
          MessageBox.Show(&quot;Some Event Raised!&quot;);
      }
  }
  </code></pre>
  <p>So I have a program situation, where I want to add an event handler with usual EventArgs to an event with some special event args.</p>
  <p>But when I try to add the handler via an EventInfo, it says it can't convert SomeEventHandler to EventHandler, although SomeEventArgs is derived from EventArgs.</p>
  <p>Why does this work in usual event handler adding, but not in event handler adding via EventInfo instance?</p>
  <p>Thanks for any suggestions:)</p>