Principale utente con più risposte
Portare finestra in primo piano

Domanda
-
salve a tutti ho bisogno di un aiuto
la mia problematica e la seguente:
ho un applicazione fatta da me gia lanciata ed in esecuzione, voglio che quando si avvia di nuovo la medesima applicazione non si apre una seconda volta ma mi mette in primo piano l'applicazione gia lanciata.
ho provato a settare nelle impostazioni dell'applicazione l'opzione "Crea istanza singola" funziona il fatto che non si aprono due applicazioni ma non mi mette in primo piano quella gia lancia.
potete aiutarmi a risolvere questo problema ?
grazie per il vostro aiuto
Risposte
-
Ciao Xivan,
dopo aver impostato 'Crea Istanza Singola' sul progetto premi il pulsante 'View Application Events' presente nella stessa pagina delle proprietà applicazione.
Fatto questo ti basta aggiungere questo semplice codice
Namespace My Partial Friend Class MyApplication Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs) Handles Me.StartupNextInstance e.BringToForeground = True End Sub End Class End Namespace
CiaoRenato Marzaro
Microsoft MVP .NET
Tutte le risposte
-
Ciao Xivan,
dopo aver impostato 'Crea Istanza Singola' sul progetto premi il pulsante 'View Application Events' presente nella stessa pagina delle proprietà applicazione.
Fatto questo ti basta aggiungere questo semplice codice
Namespace My Partial Friend Class MyApplication Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs) Handles Me.StartupNextInstance e.BringToForeground = True End Sub End Class End Namespace
CiaoRenato Marzaro
Microsoft MVP .NET
-
-
-
ciao renato ho notato che a volte non funziona pero.. come mai ?
Ciao Xivan,
cosa intendi per non funziona ?
Ciao
Renato Marzaro
Microsoft MVP .NET
-
Ciao Xivan
assicurati di avere la Proprietà Form.TopMost impostata a True
Ciao
Renato Marzaro
Microsoft MVP .NET
-
ciao renato
ti spiego meglio.. io ho il collegamento dell'applicazione sul menu start di windows...
in pratica se clicco sul collegamento sul menu start di windows mentrel'applicazione è già avviata non deve avviare una nuova istanza dell'applicazione ma bensi me la deve portare in primo piano qualora ho un'altra finestra che mi copre l'applicazione
calcole che l'applicazione che ho fatto è stata concepita per non avere icone sulla barra di windows, in pratica non posso chiuderla a icona poichè altrimenti scopare, l'unica traccia che ho è il processo della medesima nel task di windows.... non so se rendo l'idea...
grazie ancora renato
-
Ciao Xivan,
ok ma quale problema riscontri nel codice che ti ho passato?
se lo hai implementato in modo corretto non ti può aprire una seconda istanza.
Renato Marzaro
Microsoft MVP .NET
-
-
Ciao Xivan,
certo che lo capisco se me lo dici ;)
Hai provato con la Proprietà Form.TopMost ?
Se anche così non te lo fà probabilmente c'è qualche applicazione che è 'più forte' nel prendersi il primo piano. Hai notato se l'anomalia ti capita sempre quando è aperta una certa applicazione?
Ciao
Renato Marzaro
Microsoft MVP .NET