订阅事件的过程,和发布事件几乎一样,先是在View的Presenter中右键,出现如下窗体
选择Add Event Subscription后,出现如下窗体
Event Topic Name 下拉框里出现上了我上一篇定义过的事件UpdatesAvailable,但不能在同一个Presenter中既发布又订阅同样的事件,这样是没有意义的,也是不被允许的,这里我选择StatusUpdate事件,我们接下来就可以订阅这个事件了。
Threading Option 里面是设置的事件运行的线程,UserInterface (用户界面),Publisher (发布者),Background (后台)
Event Argument Type 事件的参数类型。
完成上面这些步骤,会自动在Presenter中生成如下代码
[EventSubscription(EventTopicNames.StatusUpdate, ThreadOption.UserInterface)]
public void OnStatusUpdate(object sender, EventArgs eventArgs)
{
//TODO: Add your code here
}
这样,这个Presenter就可以对这个StatusUpdate事件进行响应了。