When you create a WPF object β Window , UserControl, or anything else that comes from DispatcherObject β it is blocked in the stream in which it was created. Thus, you cannot load a window in the background thread and then transfer it to the main user interface thread. If you are going to create it in a background thread, it should remain on that thread; it should be shown by this thread and have a message about this thread.
. , , , : ", ". Application.Run, .
, . , , ( ). . - , - . , , ( " ", , " " ). , . .
, , - . , , , .