Frage

folgte ich den einfachen Schritten unter Gewusst wie: einen Splash Screen In den eine WPF-Anwendung einen splash-Screen auf meine WPF-Anwendung hinzuzufügen. Wenn ich die Anwendung starten, wird das Splash-Bild gezeigt, dann das Hauptfenster erscheint, und das Splash-Bild verklingt.

Mein Problem ist, dass, wenn das Hauptfenster erscheint, es oben auf dem Splash-Bild erscheint. Dann, wenn das Splash-Bild zu verblassen beginnt, öffnet sich das Splash-Bild wieder ganz nach oben. Das Endergebnis ist, dass das Splash-Bild für den Bruchteil verschwindet zweiter als das Hauptfenster angezeigt wird.

Wie kann ich das Hauptfenster zwingen, unter dem Splash-Bild zu erscheinen, so dass das Splash-Bild verschwindet nicht?

War es hilfreich?

Lösung

Dies ist nicht Standardverhalten Sie einige Code, das ist haben müssen manuell das Hauptfenster konzentriert?

Es kann einfacher sein, nur die Fade manuell mit einem wenig Code wie folgt zu deaktivieren:

_splash = new SplashScreen("LoadingScreen.png");

_splash.Show(false);

_splash.Close(TimeSpan.Zero);

Andere Tipps

In .NET 4.0 ein Überlastung hat zur Show hinzugefügt Verfahren, die das Fenster Stil WS_EX_TOPMOST auf dem splash-Screen-Fenster festlegen können. Zeigen Sie den Splash-Screen in Code wie folgt:

SplashScreen splash = new SplashScreen("SplashScreen.png");
splash.Show(autoClose: true, topMost: true);

Ich nenne das von der Methode

protected override void OnStartup(StartupEventArgs e)

in App.xaml.cs.

„SplashScreen.png“ natürlich ist die Kennung für Ihr Splash-Bild in der Ressourcen der Anwendung eingebettet ist.

Nicht sicher, ob dies helfen wird, aber wenn Sie den Besitzer des Splash-Screen auf das aktuelle Formular eingestellt, dann sollte dies vielleicht den Trick tun?

_splash.Owner = this;

Ansonsten können Sie sich hier:

Splash Screen Beispiel

Dies könnte auch helfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top