views:

352

answers:

1

The Splashscreen/Loading-Window in my WPF application is set to Topmost="True". Now this windows in on top of all other windows even when you switch to another application (because loading will take some time). I don't want this kind of behavior.

If I set Topmost="False" the window in not topmost at all. But If you switch back to my application after working with with another application my customers sometimes don't realize the Loading-Windows is still working. The application appears to be unresponsive because the Loading-Window in the background is still the active window and it is modal.

I want to have the Loading-Window topmost but only if my application is in foreground. If you switch to another program the window should disappear and reappear topmost when you switch back.

+4  A: 

You can try to use the "Owner" property of the window, with that the splash screen will always overlap the other windows.

Martin Moser
In my application, the MainWindow takes time to create, so it's not yet created while the splash screen is shown. So I can't set the splash screen window's owner to the main window yet.
Anthony Brien