C# 如何从无参数派生类调用参数化基类构造函数?

C# 如何从无参数派生类调用参数化基类构造函数?,c#,C#,我的基类不包含无参数构造函数 因此,我通常可以这样调用基类构造函数: public ItemFoldersForm(FormConstructor constuctorOptions): base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton) { } public ItemFoldersForm() { var

我的基类不包含无参数构造函数

因此,我通常可以这样调用基类构造函数:

public ItemFoldersForm(FormConstructor constuctorOptions): base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton)
      {

      }
public ItemFoldersForm()
      {
         var constructorOptions = ConstructorOptions.GetRandomConstructorOptions();
         base: // what to do here....
      } 
所有这些都是相当标准的,但为了便于重用,我希望在派生类中有一个无参数构造函数。这是因为构造函数选项基于随机生成器

大概是这样的:

public ItemFoldersForm(FormConstructor constuctorOptions): base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton)
      {

      }
public ItemFoldersForm()
      {
         var constructorOptions = ConstructorOptions.GetRandomConstructorOptions();
         base: // what to do here....
      } 

使用c#这个概念可能吗?

您可以定义两个构造函数:

public ItemFoldersForm(FormConstructor constuctorOptions) : base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton)
{
}

public ItemFoldersForm() : this(ConstructorOptions.GetRandomConstructorOptions())
{
}
使用默认构造函数生成随机选项,然后将这些选项传递给重载构造函数,重载构造函数将属性传递给基


请注意,执行此操作的唯一方法是在构造函数主体之前。

您可以定义两个构造函数:

public ItemFoldersForm(FormConstructor constuctorOptions) : base(constuctorOptions.WindowTitle, constuctorOptions.TabName, constuctorOptions.TabButton)
{
}

public ItemFoldersForm() : this(ConstructorOptions.GetRandomConstructorOptions())
{
}
使用默认构造函数生成随机选项,然后将这些选项传递给重载构造函数,重载构造函数将属性传递给基

请注意,执行此操作的唯一方法是在构造函数主体之前