Ich habe eine Warnung am unteren Rand meines Bildschirms:
Warnung 1 'WindowsFormsApplication2.EventControlDataSet.Events' verbirgt das geerbte Mitglied 'System.ComponentModel.MarshalByValueComponent.Events'. Verwenden Sie das neue Schlüsselwort, wenn das Ausblenden beabsichtigt war. C: \ Benutzer \ myComputer \ Desktop \ Ereignissteuerung \ WindowsFormsApplication2 \ EventControlDataSet.Designer.cs 112 32 eventControl
Wenn ich darauf doppelklicke, wird Folgendes angezeigt:
public EventsDataTable Events {
get {
return this.tableEvents;
}
Kann mir jemand sagen, wie ich das loswerden kann?
new
Schlüsselwort würde den Kompilierungsfehler beseitigen, kann jedoch zu einem anderen unbeabsichtigten Verhalten führen. Ich denke, Sie sollten Ihrer Antwort eine Warnung hinzufügen. Dies wäre hilfreich, um die Konsequenzen des Hinzufügens zu verstehennew
.@wdavo ist richtig. Gleiches gilt auch für Funktionen.
Wenn Sie eine Basisfunktion wie Update überschreiben, benötigen Sie in Ihrer Unterklasse Folgendes:
Ohne das neue zu Beginn der Funktionsdeklaration erhalten Sie das Warnflag.
quelle
Im folgenden Code wird
Class A
die SchnittstelleIShow
und ihre Methode implementiertShowData
.Class B
erbtClass A
. Um dieShowData
Methode in zu verwendenClass B
, müssen wir das Schlüsselwortnew
in derShowData
Methode verwenden, um die Basisklassenmethode auszublendenClass A
, und dasoverride
Schlüsselwort verwenden, um die Methode zu erweitern.quelle
override
Beispiel aus Ihrer Erklärung und esoverride
wird nicht benötigt.Die übergeordnete Funktion benötigt das
virtual
Schlüsselwort und die untergeordnete Funktion benötigt dasoverride
Schlüsselwort vor der Funktionsdefinition.quelle