Pergunta

Eu sei que há um evento clique do mouse para cada controle, mas existe uma maneira de determinar quando o clique do mouse não está no controle?

Foi útil?

Solução

Você pode usar este código para encontrar todos os controles ou tipo de destino do elemento visual na janela e lidar com isso de eventos do mouse.

Outras dicas

você pode verificar o IsMouseOver para falsa, e se você quiser ligar uma ação quando o IsMouseOver == false, você pode substituir os metadados de que dp.

Você pode chamar CaptureMouse e, em seguida, esse objeto irá receber todos os eventos do mouse. Você pode, então, determinar a partir do ponto do baixo do mouse se estava dentro dos limites de seu controle ou não. Ou você pode ouvir o evento LostMouseCapture vez.

Isso não vai funcionar para o evento Click (porque não existe uma versão de tunelamento, apenas uma versão borbulhando), mas você pode lidar com a PreviewMouseLeftButtonDown roteado na classe Window e verificar para ver se o controle de destino está na árvore hit .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top