Member '<Membername1>' verursacht einen Konflikt mit einem Member, der in Basis-'<Basistypname>' implizit für Member '<Membername2>' deklariert wurde, und sollte daher nicht als "Overloads" deklariert werden
Aktualisiert: November 2007
Member '<membername1>' conflicts with a member implicitly declared for member '<membername2>' in the base type '<basetypename>' and so should not be declared 'Overloads'
Für eine Eigenschaft oder Prozedur in einer abgeleiteten Klasse wird derselbe Name wie für einen impliziten Member der Basisklasse verwendet und das Overloads-Schlüsselwort angegeben.
Eine Überladung wird verwendet, um mehrere Versionen einer Eigenschaft oder Prozedur in derselben Klasse zu definieren. Sie können eine zusätzliche Version eines Basisklassenmembers nur definieren, wenn dieser Basisklassenmember bereits Overloads angibt. Da implizite Member nicht Overloads angeben, geht der Compiler davon aus, dass diese Eigenschaft oder Prozedur auf den impliziten Basisklassenmember Shadows anwendet.
Der Visual Basic-Compiler erstellt implizite Member, die bestimmten von Ihnen deklarierten Programmierelementen entsprechen. In der folgenden Tabelle werden diese impliziten bzw. synthetischen Member zusammengefasst.
Deklariertes Element |
Implizit erstellte Member |
---|---|
Enumeration |
value__-Member |
Ereignis |
add_<eventname>-Prozedur remove_<eventname>-Prozedur <eventname>Event-Feld <eventname>EventHandler-Delegat |
Eigenschaft |
get_<propertyname>-Prozedur set_<propertyname>-Prozedur |
My.Form-Member, My.WebService-Member oder Member einer Klasse, die mit dem MyGroupCollectionAttribute-Attribut markiert ist |
m_<variablename>Static-Variable <variablename>-Eigenschaft get_<variablename>-Prozedur set_<variablename>-Prozedur |
WithEvents-Variable |
_<variablename>-Variable <variablename>-Eigenschaft get_<variablename>-Prozedur set_<variablename>-Prozedur |
Aufgrund des Risikos von Namenskonflikten sollte es vermieden werden, deklarierte Programmierelemente in derselben Form wie diese impliziten Member zu benennen. Vermeiden Sie z. B. Elementnamen, die mit get_ oder set_ beginnen.
Standardmäßig ist diese Meldung eine Warnung. Weitere Informationen über das Ausblenden von Warnungen bzw. über die Behandlung von Warnungen als Fehler finden Sie unter Konfigurieren von Warnungen in Visual Basic.
Fehler-ID: BC40023
So beheben Sie diesen Fehler
- Ändern Sie den Namen der Eigenschaft oder Prozedur, um Konflikte mit den in der obigen Tabelle aufgelisteten Namen zu vermeiden.