我正在尝试从我正在创建的对象中包含的私有对象中公开一些事件,看起来编译器对此很满意:
private WindowUpdateServer _windowUpdateServer;
public event WindowUpdateHandler WindowUpdated;
public RecieveWindowFramesManager() {
_windowUpdateServer = new WindowUpdateServer();
_windowUpdateServer.ExistingWindowUpdated += WindowUpdated; // ExistingWindowUpdated is a WindowUpdateHandler
}
Run Code Online (Sandbox Code Playgroud)
但是在RecieveWindowFramesManager初始化之后_windowUpdateServer.ExistingWindowUpdated == null.
我在这里遗漏了什么 - 看来这应该有用吗?
值得注意的是,在RecieveWindowFramesManager初始化之后,我将一个事件监听器附加到WindowUpdated但它永远不会被调用(即使_windowUpdateServer.ExistingWindowUpdated被触发).
我不确定,但我认为这只会从WindowUpdated事件中分配那些在+ =操作发生时设置的处理程序.由于它是构造函数,因此列表为空.要执行您想要的操作,请为ExistingWindowUpdated创建自己的事件处理程序,并从那里触发WindowUpdated事件.
| 归档时间: |
|
| 查看次数: |
110 次 |
| 最近记录: |