Que dá origem a tela abaixo:
Bubble: É o mais comum, significa que o evento irá se propagar do elemento de origem, até que seja manipulado ou até que alcance o elemento raiz, ou seja, do nivel mais inferior da hierárquia até o primeiro nivel. Eventos buble geralmente tem o nome que indica a sua ação, por exemplo MouseDown. Veja a figura abaixo:
Tunnel: Este tipo de evento vai na outra direção, ou seja, do elemento raiz até o último elemento dentro da hierárquia até que seja manipulado ou atinjam o elemento de origem do evento. Isto permite que elementos ascendentes interceptem o evento e o manipulem antes que atinjam o elemento de origem. Evento Tunnel são prefixador com a palavra Preview por conveção. Exemplo: PreviewMousedown. Veja a figura abaixo:
Direct: Eventos direct são iguais a eventos do .NET normais.
OBS: Quando um evento é determinado como tunnel, existem também um evento bubble correspondente. O que o evento bubble faz é ir na direção do elemento mais baixo até a raiz, fazendo assim o trajeto inverso, procurando um manipulador para o evento; o fato é que se você quer parar o processo de bubbling ou tunneling você deve deve apenas adicionar um manipulador para o evento, mais indicar que o mesmo, já foi tratado. Você pode fazer isto dentro do manipulador do evento, como o exemplo de código abaixo mostra:
private void OnChildElementMouseDown(object sender,
MouseButtonEventArgs e) {
e.Handled = true;
}
Eventos anexados
Eventos anexados, permitem que você declare um evento em um elemento cujo tipo não é o de origem do evento, ou seja, um elemento diferente. Eventos anexados, permitem a flexibilidade de onde e como você irá conectar seus eventos. Se você por exemplo, deseja que um objeto grid manipule um evento do tipo Button,Click, basta apenas declarar da seguinte maneira:
<Grid Button.Click="myButton_Click">
<Button Name="myButton" >Click Me</Button>
</Grid>
Bom pessoal aprendemos mais uma parte importante dentro da arquitetura WPF. Compreender como cada parte da arquitetura funciona, é importante para saber utilizar e extrair todos os benefícios da tecnologia. Espero que tenham gostado do artigo e que eu possa ter contribuido, para o aprendizado de vocês, um abraço e até a próxima.