非モデル ウィンドウ (WPF) をいくつか開きたいのですが、これが発生する必要がある時点で、非 STA スレッドを使用しています。だから私は新しいスレッドを開始し、そこでそれらを開きます。しかし、開くとすぐに再び閉じます。(ちなみに、これらのウィンドウの動作はメインウィンドウから独立している必要があります。したがって、所有者プロパティは設定されていません)
private void SomeMethod_OnA_NON_STA_Thread()
{
// some other work here
Thread ANewThread = new Thread(OpenSomeWindows);
ANewThread.SetApartmentState(ApartmentState.STA);
ANewThread.Start();
}
private void OpenSomeWindows()
{
TestWindow T;
for (int i = 0; i < 3; i++)
{
T = new TestWindow();
T.Show();
}
}
ここで何が間違っていますか?