启动画面(MetroFramework)未显示C#?

时间:2018-09-01 10:26:28

标签: c# modern-ui

我使用了Metro框架来创建启动画面,但是当我使用.Abort()函数作为线程时,启动画面根本无法工作。但是,如果我使用.Suspend()可以正常工作,但是即使在加载主窗体后,启动画面也无法处理。 这是代码,

    public Login()
    {
        Thread t = new Thread(new ThreadStart(loading));
        t.Start();
        InitializeComponent();

        for(int i = 0; i <= 1000; i++)
        {
            Thread.Sleep(10);
            t.Abort(); 
        }
    }

     void loading()
    {
        Splash frmsplash = new Splash();Application.Run(frmsplash);

    }

这是启动画面代码,

public partial class Splash : MetroFramework.Forms.MetroForm
{
    public Splash()
    {
        InitializeComponent();
    }
}

2 个答案:

答案 0 :(得分:1)

Thread.Abort一次又一次地引发,直到由Thread.ResetAbort处理...考虑使用连接或中断并等待线程退出。

答案 1 :(得分:0)

我找到了一个解决方案,但不知道它是否对每个人都适用,我只是将t.Abort()放在for循环之外,它确实对我有用。