【问题标题】:How do I use a window as splash screen in WPF?如何在 WPF 中使用窗口作为启动画面?
【发布时间】:2012-05-08 11:06:33
【问题描述】:

我想使用常规窗口作为初始屏幕,所以没有 PNG 初始屏幕,而是可以在其中添加一些位图的普通窗口。

最好的方法是什么:在 app.xaml 中保留主屏幕的加载并将启动屏幕放在构造函数或事件处理程序的某个位置?

启动画面本身很简单,只有一些标签、一个链接、几张图片,然后在关闭前等待几秒钟,等待期间无需执行任何操作。

【问题讨论】:

  • 具有讽刺意味的是,考虑到所有针对 WinForms 开发人员遇到的问题都尖酸推荐 WPF 的人,这在 WinForms 中非常容易做到……
  • google:“wpf 启动画面”,第二个结果:codeproject.com/Articles/38291/Implement-Splash-Screen-with-WPF
  • @JaimeOlivares:别那么认真。那个实现是废话。
  • 很多 CodeProject 的东西都是脆弱的,可怕的东西..
  • @DavidAnderson & Jon:这个项目不是这样的。我使用相同的链接来创建我的 WPF 应用程序初始屏幕。

标签: c# .net wpf splash-screen


【解决方案1】:

特别是对于启动屏幕,使用functionality introduced in .NET 3.5 for this purpose 非常重要。如果您只是使用 vanilla Window,则 WPF 堆栈可能需要相当长的时间来初始化,并且在此期间,用户不会看到任何关于“启动应用程序”操作的反馈。

当然,这不满足问题的要求(“使用常规窗口”),但如果不可接受,我会建议使用与 WPF 完全不同的技术,因为上面提到的问题。

【讨论】:

  • 同意,使用 WPF 窗口作为启动屏幕有点不合时宜(尤其是当启动屏幕只是装饰,实际上并没有发生任何事情时)。使用 WinForm 会很好,因为初始化时间很快,但无论如何你都应该使用 Splash Screen 构建操作。
  • 我决定使用自己的常规窗口毕竟是因为我需要对其进行特定控制,但接受了这个答案,因为它是首选的方式。
【解决方案2】:

我自己设计了我的 WPF 应用程序动态启动画面,其中有一个动画,每个软件都会更改的动态软件编号,每 1/2 毫秒更新一次的标签以显示软件目录中的一些随机文件名.

坦率地说,我使用这个链接来创建我的

http://www.codeproject.com/Articles/38291/Implement-Splash-Screen-with-WPF

我可以提供其他链接

http://www.codeproject.com/Articles/116875/WPF-Loading-Splash-Screen http://www.olsonsoft.com/blogs/stefanolson/post/A-better-WPF-splash-screen.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 2021-10-01
    • 2019-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多