Domanda

Ho seguito i semplici passaggi descritti in Procedura: aggiungere una schermata iniziale a un'applicazione WPF per aggiungere una schermata iniziale alla mia applicazione WPF. Quando avvio l'applicazione, viene visualizzata l'immagine splash, quindi viene visualizzata la finestra principale e l'immagine splash scompare.

Il mio problema è che quando si apre la finestra principale, questa appare sopra l'immagine splash. Quindi quando l'immagine iniziale inizia a sbiadire, l'immagine iniziale viene nuovamente visualizzata in alto. Il risultato finale è che l'immagine splash scompare per una frazione di secondo quando appare la finestra principale.

Come posso forzare la visualizzazione della finestra principale sotto l'immagine splash, in modo che l'immagine splash non scompaia?

È stato utile?

Soluzione

Questo non è un comportamento predefinito, devi avere un codice che focalizza manualmente la finestra principale?

Potrebbe essere più semplice disattivare manualmente la dissolvenza con un po 'di codice come questo:

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

_splash.Show (false);

_splash.Close (TimeSpan.Zero);

Altri suggerimenti

In .NET 4.0 un overload è stato aggiunto allo Show metodo che consente di impostare lo stile della finestra WS_EX_TOPMOST sulla finestra della schermata iniziale. Mostra la schermata iniziale con il codice in questo modo:

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

Lo chiamo dal metodo

protected override void OnStartup(StartupEventArgs e)

in App.xaml.cs.

" SplashScreen.png " è ovviamente l'identificatore dell'immagine splash incorporata nelle risorse dell'applicazione.

Non sei sicuro che questo possa essere d'aiuto, ma se imposti il ??proprietario della schermata iniziale sul modulo corrente, questo dovrebbe forse fare il trucco?

_splash.Owner = this;

Altrimenti puoi guardare qui:

Esempio di schermata iniziale

Anche questo potrebbe aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top