Partilhar via


'<procedurename>' método de evento '<eventname>' não é possível marcar CLS porque seu tipo recipiente '<typename>' não é compatível com CLS

Um evento personalizado declara um procedimentoAddHandler ou RemoveHandler e o marca como <CLSCompliant(True)>,mas o evento é definido em um tipo que está marcado como <CLSCompliant(False)> ou não está marcado.

Quando você aplica CLSCompliantAttribute a um elemento de programação, você define o parâmetro isCompliant do atributo para True ou False para indicar compatibilidade ou incompatibilidade.Não há padrão para este parâmetro, e você deve fornecer um valor.

Se você não aplicar CLSCompliantAttribute a um elemento, ele vai ser considerado incompatível.

Por padrão, essa é uma mensagem de aviso.Para informações sobre como ocultar avisos ou tratar avisos como erros, consulte Configurando Avisos (Warnings) no Visual Basic.

ID de erro: BC40053

Para corrigir este erro

  • Se você precisar de compatibilidade com CLS, defina o evento em um tipo que é compatível com CLS.

  • Se você precisar que o evento permaneça em seu tipo recipiente, remova CLSCompliantAttribute da sua definição ou marque o evento como <CLSCompliant(False)>.

Consulte também

Tarefas

Como: Declarar os eventos que evitar bloqueio

Como: Declarar os eventos que conservar o uso de memória

Conceitos

AddHandler e RemoveHandler

Escrevendo código compatível com CLS