Isso parece ser o aviso 67 e pode, portanto, ser suprimido com:
#pragma warning disable 67
Não se esqueça de restaurá-lo o mais rápido possível (após a declaração do evento) com:
#pragma warning restore 67
No entanto, gostaria de verificar novamente e ter certeza de que você está promovendo o evento em algum lugar, não apenas se inscrevendo nele. O fato de o compilador emitir 20 avisos e não 20 erros quando você comenta o evento também é suspeito ...
Também há um artigo interessante sobre esse aviso e, especificamente, como ele se aplica a interfaces; há uma boa sugestão sobre como lidar com eventos "não utilizados". As partes importantes são:
A resposta certa é ser explícito sobre o que você espera do evento, que, neste caso, não é nada:
public event EventHandler Unimportant
{
add { }
remove { }
}
Isso suprimirá de forma limpa o aviso, bem como a implementação extra gerada pelo compilador de um evento normal. E, como outro benefício adicional, leva a pessoa a pensar se essa implementação sem ação é realmente a melhor implementação. Por exemplo, se o evento não é tão sem importância quanto é sem suporte, de forma que os clientes que dependem da funcionalidade provavelmente falharão sem ela, pode ser melhor indicar explicitamente a falta de suporte e falhar rapidamente lançando um exceção:
public event EventHandler Unsupported
{
add { throw new NotSupportedException(); }
remove { }
}
Obviamente, uma interface que pode ser implementada de maneira útil sem algumas partes de sua funcionalidade às vezes é uma indicação de que a interface não é perfeitamente coesa e deve ser dividida em interfaces separadas.