Поделиться через


Тип делегата <имяДелегата> события <имяСобытия> не является CLS-совместимым

Обновлен: Ноябрь 2007

Delegate type '<delegatename>' of event '<eventname>' is not CLS-compliant

Оператор Event использует делегат для задания подписи, но Оператор Delegate помечен как <CLSCompliant(False)> или не помечен.

При применении атрибута CLSCompliantAttribute к программному элементу параметру isCompliant атрибута присваивается значение True или False, чтобы указать совместимость или несовместимость соответственно. Значение по умолчанию для этого параметра отсутствует, поэтому значение необходимо указать.

Если к элементу не применяется атрибут CLSCompliantAttribute, то он считается несовместимым.

По умолчанию это сообщение является предупреждением. Дополнительные сведения о скрытии предупреждений или их обработке как ошибок см. в разделе Настройка предупреждений в Visual Basic.

Идентификатор ошибки: BC40050

Исправление этой ошибки

  • Если требуется CLS-совместимость и контроль над определением делегата, примените CLSCompliantAttribute к его объявлению, чтобы пометить его как <CLSCompliant(True)>.

  • Если у вас нет контроля над определением делегата, или не удается пометить его как совместимый, удалите CLSCompliantAttributeиз оператора Event или пометьте его как <CLSCompliant(False)>.

См. также

Основные понятия

Написание CLS-совместимого кода