DataGrid
の内容をCSV
ファイルにエクスポートする方法があります。私はWindow
を表示しようとしていますが、そのアニメーションにはユーザーに待つように要求されます。SeperateThreadのウィンドウを表示してください
しかし、Window
を見ると、アニメーションがフリーズするので、これは、Excelのメソッドが同じスレッドで実行されているためにフリーズしているためです。
これまで私が試したことはこれです。
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();
ですが、これはエラーになります。
The calling thread cannot access this object because a different thread owns it.
Excelの方法がエクスポートしている間、アニメーションが凍結しないように、どのように私は、新しいスレッドを開始することができますか?
私は別のスレッドで 'ExcelExport'メソッドを実行しないのはなぜエクスポート操作は、非UIスレッド – tym32167
で行われるべきだと思いますか? – JanDotNet