Compartir a través de


La clase '<classname>' no tiene 'Sub New' accesible y no se puede heredar

Una clase utiliza un elemento Inherits Statement para especificar una clase base, pero no puede acceder a ningún constructor de la clase base deseada.

Esto puede ocurrir si la clase base deseada no tiene constructores o si tiene constructores con niveles de acceso que impiden el acceso desde otra clase.

Cuando se hereda de una clase, su constructor debería llamar el constructor de clase base mediante MyBase. Si no realiza esta llamada o ni siquiera escribe un constructor explícito, Visual Basic genera un constructor implícito que llama a MyBase.New().

Id. de error: BC31399

Para corregir este error

  1. Si tiene control de código fuente sobre la clase base deseada, cambie el nivel de acceso de al menos uno de sus constructores para que otra clase pueda acceder a ellos.

  2. Si no puede cambiar los niveles de acceso de los constructores de la clase base deseada, herede de una clase diferente o no herede absolutamente nada.

Consulte también