【发布时间】:2011-02-28 13:05:15
【问题描述】:
我想从登录屏幕导航到 Silverlight OOB 应用中的仪表板。
我开始使用 Caliburn.Micro,但现在我怀疑我只能使用 Conductor。还是我错过了什么?
注意:我按原意将constructor更改为Conductor。这就是你不校对问题的后果。
【问题讨论】:
标签: silverlight-4.0 caliburn.micro
我想从登录屏幕导航到 Silverlight OOB 应用中的仪表板。
我开始使用 Caliburn.Micro,但现在我怀疑我只能使用 Conductor。还是我错过了什么?
注意:我按原意将constructor更改为Conductor。这就是你不校对问题的后果。
【问题讨论】:
标签: silverlight-4.0 caliburn.micro
您可以通过多种方式显示登录屏幕,最好的方法可能是从您的ShellViewModel 启动它。因此,您的 ShellViewModel 将依赖于您的 LoginViewModel,您可以将其作为抽象 (ILoginViewModel) 注入,或者最好还是使用抽象工厂,然后将其注入您的 ShellViewModel 构造函数。
无论哪种方式,一旦您在ShellViewModel 中有一个LoginViewModel 的实例,您就可以将其显示为模式对话框(在这种情况下使用Caliburn.Micro WindowManager.ShowDialog 方法-将此依赖项注入为IWindowManager 抽象),或者将登录视图显示为 shell 视图主要内容区域的一部分,在这种情况下,您的 ShellViewModel 将是一个导体,并将使用 ActivateItem 方法激活您的 LoginViewModel 实例.
一旦您收到来自您的LoginViewModel 的输入,无论是作为模态对话框还是引导视图,您都可以使用ShellViewModel 作为指挥来适当地显示您的DashboardViewModel。
【讨论】: