事件“<eventname>”的“<procedurename>”方法不能被标记为符合 CLS,因为它的包含类型“<typename>”不符合 CLS

更新:2007 年 11 月

自定义事件声明了 AddHandler 或 RemoveHandler 过程,并将其标记为 <CLSCompliant(True)>,但该事件是在标记为 <CLSCompliant(False)> 或未标记的类型中定义的。

CLSCompliantAttribute 应用于编程元素时,将该属性的 isCompliant 参数设置为 True 或 False 来指示符合或不符合。此参数没有默认值,您必须提供一个值。

如果没有将 CLSCompliantAttribute 应用于某个元素,则认为该元素是不符合的。

默认情况下,此消息是一个警告。有关隐藏警告或将警告视为错误的信息,请参见 在 Visual Basic 中配置警告

**错误 ID:**BC40053

更正此错误

  • 如果需要符合 CLS,请在符合 CLS 的类型中定义事件。

  • 如果需要事件保留在其包含类型内,请从其定义中移除 CLSCompliantAttribute,并将其标记为 <CLSCompliant(False)>。

请参见

任务

如何:声明避免阻止的事件

如何:声明保留内存使用的事件

概念

AddHandler 和 RemoveHandler

编写符合 CLS 的代码