我有以下几段代码,在我看来,它们似乎是实现Observer模式所必需的基础知识。这是标准吗,还是我做错了什么?如何让一个对象订阅他人的事件,同时保持两个松耦合?
public class LayoutManager
{
public CormantTimer Timer { get; set; }
}
protected void Page_Init(object sender, EventArgs e)
{
LayoutManager.Instance.Timer = RefreshAndCycleTimer;
}
public class CormantRadDock : RadDock, ICormantControl<RadDockSetting>
{
public CormantRadDock()
{
LayoutManager.Instance.Timer.TimerEvent += DoTimerRefreshTick;
}
}
CormantRadDock对象是动态创建的。 RefreshAndCycleTimer在页面上。
我很担心,随着我的项目越来越大,LayoutManager中会有大量的非相关控件 - 只需订阅即可。这是标准吗?我应该做一些不同的事情吗?
感谢