我如何从调用基本构造函数的 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) {}
}
所以我继承了这个 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) {}
}