启动画面计时器

时间:2012-02-14 15:42:45

标签: c# wpf timer splash-screen

我实际上尝试在我的WPF应用程序中添加一个启动画面。这很容易:

SplashScreen s = new SplashScreen("/Images/Agrar.png");
s.Show(true);

我的问题是,我希望Splash Screen显示大约10秒,但我的应用程序不需要这么长时间来加载。

所以我想到了Timer类并尝试了一下,但我不知道如何将它与Splash Screen结合起来。 有更好的解决方案吗?它如何与Timer一起使用?因为我没有找到一个选项,说明在Timer运行时会发生什么。

2 个答案:

答案 0 :(得分:0)

您可以尝试让主线程处于休眠状态10秒钟(如果可见飞溅,用户将无法使用您的应用程序),或者在一段时间内淡出飞溅:

    SplashScreen splash = new SplashScreen("/Images/Agrar.png");
    splash.Show(false);
    Thread.Sleep(10000);
    splash.Close( TimeSpan.FromSeconds(20)); //fade out over 20 seconds

答案 1 :(得分:0)

使用API​​的最佳方法是

  SplashScreen splash = new SplashScreen("splashscreen.jpg");
  splash.Show(false);
  splash.Close(TimeSpan.FromMilliseconds(2));
  InitializeComponent();