基底クラス '<クラス名 2>' に引数なしで呼び出されるアクセス可能な 'Sub New' が 2 つ以上指定されているため、クラス '<クラス名 1>' で 'Sub New' を宣言する必要があります

派生クラスでコンストラクターが宣言されておらず、Visual Basic では呼び出す基底クラスのコンストラクターを特定できないため、コンストラクターを生成できません。

派生クラスでコンストラクターが宣言されていない場合、Visual Basic は、MyBase.New() を呼び出す暗黙的なパラメーターなしのコンストラクターを生成しようとします。 引数を指定せずに呼び出すことができる基底クラスにアクセス可能なコンストラクターがない場合、または複数ある場合、Visual Basic では暗黙的なコンストラクターを生成できません。

この状況は、たとえば、1 つの基底クラスのコンストラクターに 1 つの Optional 引数があり、別の基底クラスのコンストラクターに 1 つの ParamArray 引数がある場合に発生することがあります。 これらの基底クラスのコンストラクターはそれぞれ引数なしで呼び出すことができます。

エラー ID: BC32036

このエラーを解決するには

  1. 派生クラスの任意の場所で少なくとも 1 つの Sub New コンストラクターを宣言し、実装します。

  2. 基底クラスのコンストラクター MyBase.New()への呼び出しを、すべての Sub Newの最初の行として追加します。

関連項目