با کلاس Thread می تونی این کارو انجام بدی
کاری که ممکنه طولانی باشه رو توی یک تابع تعریف کن
مثال :
private void command()
{
splash sp = new splash(); // show working
sp.Show();
Thread.Sleep(200);
sp.Close();
}
من با دستور sleep میام یه وقفه ایجاد میکنم ( فرض دستوری که زمان اجراش زیاده ) و تا زمان پایان اجرای دستور یه فرم نمایش داده میشه ( فرم splash )
این قسمت هم نحوره استفاده از کلاس thread هست که تابع رو بهش میدی و start می کنی و تا پایان دستورات متد فعال هست.
private void button2_Click(object sender, EventArgs e)
{
Thread t = new Thread(command);
t.Start();
}