Mouse WPF Fare clic su Off Event
-
06-07-2019 - |
Domanda
So che esiste un evento clic del mouse per ogni controllo, ma c'è un modo per determinare quando il clic del mouse non è sul controllo?
Soluzione
potresti utilizzare questo codice per trovare tutti i controlli o il tipo di destinazione dell'elemento visivo nella finestra e gestirne gli eventi del mouse.
Altri suggerimenti
puoi controllare IsMouseOver per false, e se vuoi agganciare un'azione quando IsMouseOver == false, puoi sovrascrivere i metadati di quel dp.
Puoi chiamare CaptureMouse e quindi quell'oggetto riceverà tutti gli eventi del mouse. È quindi possibile determinare dalla punta del mouse verso il basso se era all'interno dei limiti del controllo o meno. Oppure puoi ascoltare l'evento LostMouseCapture invece.
Questo non funzionerà per l'evento Click
(perché non esiste una versione di tunneling, solo una versione gorgogliante), ma è possibile gestire il PreviewMouseLeftButtonDown
indirizzato sul < code> Window e verifica se il controllo target si trova nell'albero dei risultati.