Come ottenere l'evento di clic al minimo della finestra WPF?Ottieni il clic sulla casella di minimizzazione di una finestra WPF
risposta
C'è un evento chiamato StateChanged
che (dall'aiuto) sembra che potrebbe fare ciò che si desidera.
Si verifica quando la proprietà WindowState della finestra cambia.
L'aiuto dice che è supportato solo in .NET 3.0 e 3.5 in Vista, ma l'ho appena provato su XP e si attiva quando la finestra viene ridotta a icona, ingrandita e ripristinata. Tuttavia, dai miei test, si spara dopo lo lo stato è cambiato, quindi se si vuole fare qualcosa prima che la finestra venga minimizzata, questo potrebbe non essere l'approccio necessario.
Dovrai controllare lo stato attuale per assicurarti che sia corretto.
private void Window_StateChanged(object sender, EventArgs e)
{
switch (this.WindowState)
{
case WindowState.Maximized:
MessageBox.Show("Maximized");
break;
case WindowState.Minimized:
MessageBox.Show("Minimized");
break;
case WindowState.Normal:
MessageBox.Show("Normal");
break;
}
}
Ovviamente se stavo solo stampando la condizione userei this.WindowState.ToString()
;)
Il seguente dovrebbe ottenere aggiunto alla defintion XAML della finestra da Visual Studio:
StateChanged="Window_StateChanged"
Vedi questa domanda per informazioni su come fare qualcosa ** prima ** la finestra è ridotta a icona http://stackoverflow.com/questions/926758/window-statechanging-event-in-wpf –
Spiacente, non si tratta di WPF perché non ho funzionato molto con WPF. Ma un'altra cosa che puoi fare è controllare la proprietà Windowstate durante l'evento Resized of Form. E se è uguale a FormWindowState.Minimized, allora si minimizza il pulsante (?) ;-)
Oltre alla risposta di Shoban ...
È possibile utilizzare l'evento Disattivato di Windows, è possibile persino usare StateChange evento, come di seguito
private void Window_Deactivated(object sender, EventArgs e)
{
if(this.WindowState== WindowState.Minimized)
// Do your stuff
}
sarebbe utile ....
- 1. WPF Ottieni finestra principale
- 2. Come focalizzare una finestra WPF modale quando si fa clic sulla finestra principale dell'applicazione
- 3. Focus cursore sulla casella di testo in WPF/C#
- 4. WPF fare clic sulla casella di controllo modifica etichetta Proprietà isChecked
- 5. Combinazione casella di controllo WPF
- 6. Ottieni una bitmap da una finestra dell'applicazione WPF?
- 7. Keyboard.Focus non funziona sulla casella di testo in WPF
- 8. Avere una finestra wpf all'interno di un'altra finestra wpf
- 9. Ottieni bandiere attive sulla finestra Android
- 10. Evento doppio clic sul bordo finestra WPF
- 11. Nascondere sulla tastiera iOS quando l'utente fa clic all'esterno di una casella di testo
- 12. VBA - Ottieni il valore selezionato di una casella combinata
- 13. come impostare lo stato attivo sulla casella di testo in una finestra di dialogo utilizzando C#
- 14. Minimizzazione/chiusura dell'applicazione al vassoio di sistema tramite WPF
- 15. WPF CommandParameter nella casella di testo
- 16. Selezionando una casella di controllo facendo clic su un'immagine
- 17. Come modificare dinamicamente il modello di un controllo WPF utilizzando una casella di controllo?
- 18. come mostrare il calendario sulla casella di testo fare clic in html
- 19. layout di WPF in una finestra
- 20. come chiudere una finestra di dialogo WPF quando l'utente fa clic all'esterno di esso
- 21. Annulla una finestra di chiusura in WPF
- 22. Come cancellare una casella di testo dopo aver fatto clic su un pulsante in WPF?
- 23. rilevare la pasta sulla casella di input
- 24. datatemplate casella di riepilogo WPF
- 25. Finestra di dialogo mobile non modale in WPF
- 26. Ottieni l'ID di una casella di controllo? - jQuery
- 27. Ottieni il colore di sfondo della finestra
- 28. Fare clic sulla casella di controllo all'interno di un elemento del pulsante - Problema di Firefox
- 29. WPF: Arresto o inversione di una modifica di selezione in una casella di riepilogo
- 30. Ottieni posizione di clic sul comando binding
Perché avete bisogno di sapere quando è stato cliccato? C'è una ragione per cui devi saperlo e iscriverti a Window.StateChanged? – Andy