观察者模式和事件的不同之处

假如有A窗体,有一个计时器

B窗体,也有一个计时器。

要求B窗体的计时器和A窗体同步。

 

A窗体是主界面,B窗体是子界面

 

方案1:要使得B窗体和A窗体保持同步的计时器,那么在启动B窗体的时候,可以将A窗体的计时器的间隔作为B窗体的构造函数的参数传递

或者将A窗体的间隔保存到文件中,在B窗体加载之后,从配置中读取

然后,在A窗体改变计时器的间隔时,通过事件的方式通知B窗体。

 

方案2:可以实现观察者模式,在实例化B窗体的时候,直接通过观察者模式将间隔传递过去。并且在改变A窗体计时器间隔的时候,通过OnNext方法通知所有的观察者,计时器采集间隔发生变化。

 

posted @ 2015-02-26 10:46  ChuckLu  阅读(271)  评论(0编辑  收藏  举报