Показывать заставку во время загрузки основной формы

Я пытаюсь, чтобы сначала появился заставка, а после заставкиMainForm появляется. Но индикатор выполнения, который я имею в заставке, не достигает конца бара. И программа продолжает работать и не работает.

Как я могу показать заставку во время загрузки основной формы?

Мой код Это что-то вроде этого:

public partial class SplashForm : Form
{
    public SplashForm()
    { 
        InitializeComponent();
    }
    private void SplashForm_Load(object sender, EventArgs e)
    {
        timer1.Enabled = true;
        timer1.Start();
        timer1.Interval = 1000;
        progressBar1.Maximum = 10;
        timer1.Tick += new EventHandler(timer1_Tick);
    }
    public void timer1_Tick(object sender, EventArgs e)
    {
        if (progressBar1.Value != 10)
        {
            progressBar1.Value++;
        }
        else
        {
            timer1.Stop();
            Application.Exit();
        }
    }     
}

Вот первая часть кодаMainForm:

public partial class MainForm : Form
{
    public MainForm()
    {
        InitializeComponent();
        Application.Run(new SplashForm());
    }
}

Ответы на вопрос(1)

Ваш ответ на вопрос