我如何从调用基本构造函数的 class 继承?

How do I inherit from class that calls base constructor?

所以我继承了这个 Xamarin 应用程序的测试平台 Android 用 C# 为 Specflow 编写。 我对 Xamarin 一无所知,对 Specflow 知之甚少,我已经 10 年没有用 C# 编写任何代码了,所以请耐心等待。 尝试创建一个继承自 Button 的 class,我收到此错误:

There is no argument given that corresponds to the required formal parameter 'controlIdQuery' of 'Button.Button(Func <AppQuery, AppQuery>)'

我的派生 class 看起来像这样:

public class Buttons : Button
{
}

按钮 class 看起来像这样:

public class Button : ControlBase
{ 
    public Button(Func<AppQuery, AppQuery> controlIdQuery) : base(controlIdQuery) { }
}

而父类class,Button的ControlBase是这样的:

public abstract class ControlBase : AppBase
{
    public Func<AppQuery, AppQuery> controlIdQuery;

    public AppResult[] _appresult;
    public static IApp _appelement;
    public string _methodName;
    public object _argument;
    public bool waiting;
    public static Platform _appPlatform;

    public ControlBase(Func<AppQuery, AppQuery> idQuery)
    {
    }
}

我希望能够创建一个基于 Button 的 class,就像我可以使用其他控件 classes 一样。我该怎么做才能在这里启用继承?

您的 class 的构造函数需要调用基础 class 构造函数

public class Buttons : Button
{
   public Buttons(Func<AppQuery, AppQuery> controlIdQuery) : base(controlIdQuery) {}
}