2011-12-02 106 views
3

我正在使用带有WPF的Caliburn Micro v1.3。我想在加载应用时显示启动画面。如何使用Caliburn Micro显示启动画面

我有如下重写OnStartup但看不到如何关闭我的飞溅当base.OnStartup完整

protected override void OnStartup(object sender, System.Windows.StartupEventArgs e) 
    { 
     var wm = new WindowManager(); 
     var vm = new StatusReporterViewModel("TEST", "information", null); 

     try 
     { 
      wm.ShowWindow(vm); 

      base.OnStartup(sender, e); 

     } 
     finally    
     { 
      vm.TryClose(); 
     } 

    } 

任何想法?

干杯

史蒂夫

回答

6

如果你想使用默认的WPF飞溅机制则不需要代码。

图像文件添加到您的WPF .EXE项目,然后设置属性的图像上的“闪屏”

enter image description here

+0

看起来像一个很好的解决方案,但没有奏效。我得到一个无法找到资源错误。可能Caliburn造成这种情况。 –

+0

我的错误 - 重新启动VS,现在运行良好。谢谢。 –

1

如果您的开机画面是一个实际的自定义窗口,你可以关闭闪屏在OnInitialize()你的ShellViewModel的方法(或者如果你没有一个shell,第一个视图模型被激活)。要获得对Shell中的SplashScreen的引用,可以注入它或使其成为单身人士