【问题标题】:How to check which resources are loading while application is loading?如何在应用程序加载时检查哪些资源正在加载?
【发布时间】:2010-12-17 12:32:38
【问题描述】:
我想在我的应用程序加载时向用户显示正在加载哪些资源。
示例:加载模块...
他们真的会检查一些资源并加载它们吗
如是。请帮助我在普通的 C sharp/wpf 应用程序中执行相同的代码
使用闪屏和进度条。
还如何跟踪加载东西的进度。
一个例子会以更好的方式帮助我。
我正在创建一个包含 4 个模块的应用程序。
患者、医生、住院患者、内置数据。
启动屏幕后,会显示一个登录表单。成功登录后,显示菜单可以从 4 个模块中进行选择。
【问题讨论】:
标签:
c#
screen
loading
splash-screen
progress
【解决方案1】:
所有资源都在编译时链接。
对象是在您创建对象时在运行时创建的。
诀窍是管理您的对象创建。与其在声明部分初始化所有成员,不如在构造函数中这样做,这样您就可以对加载过程提供某种反馈。
不好的例子:
Class blah
{
private A a = new A();
private B b = new B();
public blah() { }
}
如果你这样做,对象是“自动”创建的,你无法得到任何关于进程的反馈(如果 A 或 B 失败,你可能会遇到致命错误,或者抛出异常......这很难调试)。
正确的做法应该是:
Class blah
{
private A a;
private B b;
public blah()
{
A = new A();
//Send some message that A succeeded
B = new B();
//Send some message that B succeeded
}
}
这样您可以跟踪对象的创建过程。
之后您所要做的就是捕获消息(您可以使用事件),并将数据中继到进程栏或其他东西。