You might use an extension method in a public static class
public static void UseWaitCursor(this FrameworkElement fel)
{
Mouse.OverrideCursor=Cursors.Wait;
fel.Dispatcher.InvokeAsync(() => { Mouse.OverrideCursor=null; }, System.Windows.Threading.DispatcherPriority.ApplicationIdle);
}
Then its easy like:
private void MainWindowLoaded(object sender, RoutedEventArgs e)
{
UseWaitCursor();
....
}