通常我只是App.xaml资源中的引导程序,但对于正在构建的应用程序,我需要执行代码才能在别处开始,然后在完成初始化代码后启动引导程序。Caliburn.Micro从代码启动引导程序?
如何启动引导程序?
我设置App.xaml中调用一个函数作为再这样做:
using System.Windows;
namespace WpfApplication9
{
public partial class App : Application
{
private AdminBootstrapper b;
private void App_OnStartup(object sender, StartupEventArgs e)
{
//DO initialization
b = new AdminBootstrapper();
b.Start();
}
}
}
当我运行没有任何反应,我的观点不会出现。我知道view/viewmodel工作,因为如果我将引导程序放在App.xaml的resources部分中,它就会出现。
我在这里做错了什么?
也许在启动阶段太早 - 这可能是它在资源中工作的原因:当资源被分析和加载时引导程序被实例化 - 可能OnStartup为CM找到注册东西所必需的位太早了。创建一个新引导程序的行为调用'Bootstrapper.Start',所以你不需要手动调用它 – Charleh 2013-05-11 00:06:34
哦,你是否顺便在你的应用程序构造函数中调用'InitializeComponent'?这通常很重要! – Charleh 2013-05-11 00:08:32
感谢您的回应,但我希望它在运行一段代码之前,它会尝试加载任何视图模型或视图。然后当我准备好的时候给它打电话。这就是为什么我试图在代码中启动它。 – Kelly 2013-05-11 00:53:14