Displaying Please Wait Window auf einem SeperateThread

Ich habe eine Methode, die den Inhalt meines @ exportieDataGrid zu einerCSV Datei. Ich versuche ein @ anzuzeigWindow das eine Animation enthält, die den Benutzer zum Warten auffordert.

Allerdings, wenn ich das @ zeigWindow Die Animation friert ein, daher habe ich angenommen, dass dies daran liegt, dass die Excel-Methode auf demselben Thread ausgeführt wird, auf dem sie einfriert.

as ich bisher ausprobiert habe ist das;

var waitWindow = new PleaseWaitWindow();

var newWindowThread = new Thread(() =>
{
    waitWindow.Show();
    System.Windows.Threading.Dispatcher.Run();
});

newWindowThread.SetApartmentState(ApartmentState.STA);
newWindowThread.IsBackground = true;
newWindowThread.Start();

ExcelExport();

waitWindow.Close();

aber das führt zu einem Fehler;

The calling thread cannot access this object because a different thread owns it.

Wie kann ich einen neuen Thread starten, damit die Animation nicht einfriert, während die Excel-Methode exportiert?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage