我需要从db4o数据库加载一些数据,这在我的应用程序启动时需要1或2秒,其余的必须等待,因为首先必须加载数据.在自己的线程中执行此操作意味着其余的必须等待线程完成.我想在加载数
我正在使用csharp,.net 3.5和winforms
在启动时显示启动画面很容易.在应用程序的Main()方法(在Program.cs中)中,在Application.Run(…)行之前放置类似的东西:SplashForm splashy = new SplashForm(); splashy.Show(); Application.Run(new MainForm(splashy));
修改主窗体的代码和构造函数,使其看起来像这样:
private SplashForm _splashy; public MainForm(SplashForm splashy) { _splashy = splashy; InitializeComponent(); }
然后在MainForm的Load事件结束时(可能包含数据库代码),输入以下代码:
_splashy.Close(); _splashy.Dispose();
如果您选择使用单独的Thread或BackgroundWorker进行数据库访问,那么您实际上并不需要启动屏幕,因为您需要在BackgroundWorker正在执行其操作时出现的某种进度指示器表单.这与我在这里的答案不同.