有没有人知道一个关于Caliburn.Micro屏幕/导体生命周期概述的来源?例如,描述它们调用顺序/依赖关系以及何时调用或不调用的条件的序列图/流程图?
到目前为止,我主要使用OnViewLoaded,但我想知道哪些会第二次调用(再次显示时等)。我还没有找到有关屏幕生命周期的良好文档。
是的,我知道它是开源的,我可以阅读源代码或调试它(我现在正在做这件事)......只是认为这个要求对于使用Caliburn.Micro来说有点基本,必须已经有人做过了,我不需要自己创建这个概述。也许这个答案也可以帮助其他人。;-)
例如,当从Conductor.Collection.OneActive派生时,存在以下(甚至更多)似乎在生命周期中起作用并且可以重载的方法:
从应用程序启动到退出,我所看到的顺序如下:
protected virtual void OnInitialize()
protected virtual void OnActivate()
protected virtual void OnActivationProcessed(IScreen item, bool success)
protected virtual void OnDeactivate(bool close)
protected virtual void OnViewAttached(object view, object context)
protected virtual void OnViewLoaded(object view)
protected virtual void OnViewReady(object view)
从应用程序启动到退出,我所看到的顺序如下:
- OnViewAttached:视图附加时
- OnInitialize:初始化时
- OnActivate:激活时
- OnViewReady:视图准备就绪时
- OnViewLoaded:视图加载完成时
- OnActivationProcessed:激活处理完成时
- OnDeactivate:停用时