Creating and changing splash screen in WPF
<p>I have following Code:</p>

<pre><code> Thread thread = new Thread(new ThreadStart(CreateSplashScrn));
        thread.SetApartmentState(ApartmentState.STA);
        thread.IsBackground = true;
        thread.Start();

    OpenSplashScrn();
    ChangeSplashScrnMessageText("String");

    public void CreateSplashScrn()
    {
        splash = new SplashScreen(this);
        System.Windows.Threading.Dispatcher.Run();
    }

    public void OpenSplashScrn()
    {
        splash.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal,
            new Action(() =&gt; { splash.Show(); }));
    }

    public void ChangeSplashScrnMessageText(string messageText)
    {
        splash.messageLabel.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal,
            new Action(() =&gt; { splash.messageLabel.Content = messageText; }));
    }
</code></pre>

<p>However, this returns a Null Reference Exception at OpenSplashScrn().
How can I open this in another thread and change the Label content?
Is this possible over a Task? </p>