Tengo una advertencia en la parte inferior de mi pantalla:
Advertencia 1 'WindowsFormsApplication2.EventControlDataSet.Events' oculta el miembro heredado 'System.ComponentModel.MarshalByValueComponent.Events'. Usa la nueva palabra clave si te intentabas esconder. C: \ Users \ myComputer \ Desktop \ Event Control \ WindowsFormsApplication2 \ EventControlDataSet.Designer.cs 112 32 eventControl
Si hago doble clic en él, aparece:
public EventsDataTable Events {
get {
return this.tableEvents;
}
¿Alguien puede decirme cómo deshacerme de esto?
new
palabra clave eliminaría el error de compilación, pero puede introducir otros comportamientos no deseados. Creo que debería agregar una advertencia a su respuesta. Eso sería útil para comprender las consecuencias de sumarnew
.@wdavo es correcto. Lo mismo ocurre con las funciones.
Si anula una función base, como Actualizar, entonces en su subclase necesita:
Sin el nuevo al comienzo de la declinación de la función, obtendrá la bandera de advertencia.
fuente
En el código siguiente,
Class A
implementa la interfazIShow
e implementa su métodoShowData
.Class B
heredaClass A
. Para usar elShowData
método enClass B
, tenemos que usar la palabra clavenew
en elShowData
método para ocultar elClass A
método de la clase base y usar laoverride
palabra clave para extender el método.fuente
override
en su ejemplo de su explicación yoverride
no es necesario.La función principal necesita la
virtual
palabra clave y la función secundaria necesita laoverride
palabra clave delante de la definición de la función.fuente