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?

È stato utile?

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.

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