3

我正在重构一个类,并将部分移动到一个基类中。

我有一些类似的事件

public event EventHandler GridBinding;

现在在基类中,但我发现我现在无法检查派生类中的事件是否为空。这样做会给我错误:

事件 'xyz.GridBinding' 只能出现在 += 或 -= 的左侧(在类型 'xyz._MyBaseClass' 中使用时除外)。

这是正确的,我是否遗漏了什么,或者有什么办法可以解决这个问题,或者编写访问器是唯一的方法吗?我正在使用 c#/.net 4.0

4

1 回答 1

2

不,你无法解决这个问题。

正确的方法是在包含事件的类中声明受保护的方法,以便您可以在需要时从任何派生类中触发它们。

于 2010-04-22T10:11:43.713 回答