C# 将继承的方法订阅到构造函数中的事件,然后在继承的类中调用该构造函数

C# 将继承的方法订阅到构造函数中的事件,然后在继承的类中调用该构造函数,c#,events,inheritance,constructor,subscription,C#,Events,Inheritance,Constructor,Subscription,我似乎在C#中遇到了构造函数、继承和事件订阅方面的问题 考虑以下C#程序: 我想要的是显示文本。i、 我想订阅基类中事件的继承基类方法,然后能够调用子类中的构造函数,并在触发该事件时调用子类的事件方法,而不是基类 有没有办法做到这一点 new public void myEvent() 这将创建一个新事件。你不会想要的。在基类中使事件虚拟,并在此处使用覆盖而不是新建。将基类方法标记为虚拟,您的问题将得到解决 public virtual void myEvent() { } 您需要将方法设

我似乎在C#中遇到了构造函数、继承和事件订阅方面的问题

考虑以下C#程序:

我想要的是显示文本。i、 我想订阅基类中事件的继承基类方法,然后能够调用子类中的构造函数,并在触发该事件时调用子类的事件方法,而不是基类

有没有办法做到这一点

new public void myEvent()

这将创建一个新事件。你不会想要的。在基类中使事件
虚拟
,并在此处使用
覆盖
而不是
新建

将基类方法标记为虚拟,您的问题将得到解决

 public virtual void myEvent() { }

您需要将方法设置为虚拟:

public class Base
{...       

    public virtual void myEvent() { }
并覆盖它

    public class Derived : Base
{
    ...

    public override void myEvent()
    {
        System.Console.WriteLine("The event was fired, and this text is the response!");
    }
}
    public class Derived : Base
{
    ...

    public override void myEvent()
    {
        System.Console.WriteLine("The event was fired, and this text is the response!");
    }
}