Leggere in inglese

Condividi tramite


La classe '<classname>' non dispone di 'Sub New' accessibili e non può essere ereditata

Una classe usa un' Inherits Statement per specificare una classe base, ma non può accedere qualsiasi altro costruttore nella classe base desiderata.

Questa situazione può verificarsi se la classe base desiderata non ha costruttori o se ha costruttori con livelli di accesso che impediscono l'accesso da un'altra classe.

Quando si eredita una classe, il costruttore deve chiamare il costruttore della classe di base usando MyBase. Se non si effettua questa chiamata, o se non si scrive un costruttore esplicito, Visual Basic genera un costruttore implicito che chiama MyBase.New().

ID errore: BC31399

Per correggere l'errore

  1. Se si ha il controllo del codice sorgente sulla classe base desiderata, modificare il livello di accesso di almeno uno dei costruttori in modo che un'altra classe possa accedervi.

  2. Se non è possibile modificare i livelli di accesso dei costruttori di classe base desiderata, ereditare da una classe diversa o non ereditarli affatto.

Vedi anche