Заставка (MetroFramework) не отображает C #? - PullRequest
0 голосов
/ 01 сентября 2018

Я использовал Metro Framework для создания заставки, но когда я использую функцию .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 голосов
/ 01 сентября 2018

Thread.Abort вызывается снова и снова, пока он не будет обработан с Thread.ResetAbort ... рассмотрите возможность использования соединения или прерывания и ожидания выхода потока.

0 голосов
/ 01 сентября 2018

Я нашел решение, но не знаю, будет ли оно работать для каждого, я просто поставил t.Abort() вне цикла for, оно работает для меня.

...