加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 加载数据并在此期间显示启动画面

发布时间:2020-12-16 01:32:30 所属栏目:百科 来源:网络整理
导读:我需要从db4o数据库加载一些数据,这在我的应用程序启动时需要1或2秒,其余的必须等待,因为首先必须加载数据.在自己的线程中执行此操作意味着其余的必须等待线程完成.我想在加载数据期间做一个启动画面或其他东西,因为还需要一个自己的线程,对吗?你会怎么做?
我需要从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正在执行其操作时出现的某种进度指示器表单.这与我在这里的答案不同.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读