¿Cómo se comparan los eventos estáticos con los eventos no estáticos en C #?

xisten @i eventos estáticos acabo de dar cuenta - y estoy curioso cómo la gente los usa. Me pregunto cómo la comparación relativa se mantiene con los métodos estáticos frente a los de instancia. Por ejemplo, un método estático es básicamente una función global. Pero siempre he asociado eventos coninstancias de objetos y tengo problemas para pensar en ellos a nivel mundial.

Aquí hay un código para consultar si ayuda a una explicación:

void Main()
{
    var c1 = new C1();
    c1.E1 += () => Console.WriteLine ("E1");
    C1.E2 += () => Console.WriteLine ("E2");
    c1.F1();
}

// <<delegate>>+D()
public delegate void D();

// +<<event>>E1
// +<<class>><<event>>E2
// +F()
//      <<does>>
//          <<fire>>E1
//          <<fire>>E2
public class C1
{
    public void F1()
    {
        OnE1();
        OnE2();
    }
    public event D E1;
    private void OnE1()
    {
        if(E1 != null)
        {
            E1();
        }
    }
    static public event D E2;
    static private void OnE2()
    {
        if(E2 != null)
        {
            E2();
        }
    }
}

Respuestas a la pregunta(5)

Su respuesta a la pregunta