Por ejemplo, recibo esta advertencia del compilador,
El evento 'Company.SomeControl.SearchClick' nunca se usa.
¡Pero sé que se usa porque comentarlo me arroja como 20 nuevas advertencias de páginas XAML que están tratando de usar este evento!
¿Lo que da? ¿Existe algún truco para deshacerse de esta advertencia?
Respuestas:
Esto parece ser la advertencia 67 y, por lo tanto, se puede suprimir con:
No olvide restaurarlo lo antes posible (después de la declaración del evento) con:
Sin embargo, lo comprobaría de nuevo y me aseguraría de que esté promocionando el evento en algún lugar, no solo suscribiéndolo . El hecho de que el compilador escupe 20 advertencias y no 20 errores cuando comenta el evento también es sospechoso ...
También hay un artículo interesante sobre esta advertencia y específicamente cómo se aplica a las interfaces; hay una buena sugerencia sobre cómo lidiar con eventos "no utilizados". Las partes importantes son:
fuente
Si se ve obligado a implementar un evento desde una interfaz, que su implementación no necesita, puede hacer lo siguiente para evitar la advertencia.
fuente
if(OnCompleteOpenEvent != null) OnCompleteOpenEvent();
que "OnCompleteEvent no existe en el contexto actual".La segunda mejor manera es, en mi humilde opinión, indicar claramente que el evento no es compatible al lanzar una excepción si alguien intenta suscribirse.
Como variante de esto, también puede dejar los métodos
add
yremove
vacíos para ignorar silenciosamente las suscripciones en el evento.La mejor solución es refactorizar el código, quizás extraer la declaración del evento al implementador si es posible.
Como último recurso, también puede desactivar la advertencia así
fuente
También puede hacer lo siguiente:
fuente
El compilador aparentemente no es consciente de que se está utilizando en código XAML. Intente suprimir la advertencia en la definición de su evento.
Además, asegúrate de estar planteando el evento en algún lugar.
fuente
Puede suprimir advertencias individuales.
En este caso, CS0219 es la advertencia con respecto a las variables que se asignan pero no se utilizan. Puede usar la marca / nowarn: 0219 o agregar el número de error en el panel de propiedades del proyecto (en "Generar", recuerde eliminar el CS principal). Tenga en cuenta que suprime todas las advertencias de esta clase.
fuente
O puede agregar
<NoWarn>67</NoWarn>
a su proyectofuente