Meu plugin minha vida — Xamarin.Forms.EventAggregator

Thiago Bertuzzi
3 min readJan 18, 2022

Fala galera,

Tudo beleza?

Em julho do ano passado eu publiquei um artigo chamado O X do Xamarin Forms — Utilizando EventAggregator (Sem o Prism). Muitas pessoas me procuraram , agradeceram e tem utilizado a dica no lugar do MessagingCenter .

Para facilitar mais ainda a utilização em novembro de 2020 eu criei um pacote nuget chamado Xamarin.Forms.EventAggregator e agora depois de 5.560 Downloads! Vim trazer ele aqui no medium para vocês , bora conhece?

Bem Antes de mais nada, para não ser repetitivo se você não sabe o que é a ideia do EventAggregator e como funciona não esqueça de ver o artigo : Utilizando EventAggregator (Sem o Prism)

Se você já leu, bora pro Plugin!

Configurando o Plugin

Vamos ao querido Nuget baixar o pacote Xamarin.Forms.EventAggregator e instalar no projeto compartilhado :

Pronto! Não requer mais configurações :D

Utilizando o Plugin

Vamos criar uma classe para ser nossa mensagem de exemplo :

Agora vamos criar nossa View Principal que ira receber a mensagem:

E sua ViewModel :

para facilitar a navegação eu utilizei o MVVMHelpers , que inclusive se quiser saber mais eu fiz um artigo sobre ele : O X do Xamarin Forms — MVVM Helpers

Note que nessa ViewModel fizemos a implementação do Plugin, o EventAggregator.Instance.RegisterHandler<TextMessage>( TextHandler); Implementa um Handler, que vai ficar registrado “escutando” e esperando receber algo.

Nesse caso ele recebe nossa TextMessage criada anteriormente e sobrescreve o valor da Propriedade Text pelo valor dela. Você pode criar qualquer tipo de Event dependendo da sua necessidade.

Agora vamos criar a pagina que ira enviar a Mensagem :

E sua ViewModel :

Nessa ViewModel nos Chamamos o Método EventAggregator.Instance.SendMessage(TextMessage); Ele é o responsavel por enviar a mensagem para o Handler que ficou escutando o TextMessageEvent da ViewModel anterior.

Agora vamos rodar :

Muito legal né?

Caso não queira utilizar o pacote, pode pegar a implementação do código no repositório oficial.

Mas se preferir o pacote Nuget pode baixar o exemplo no repositório oficial do pacote clicando aqui.

Quer ver outros artigos sobre Xamarin ? Clique aqui.

Espero ter ajudado!

Aquele abraço!

--

--

Thiago Bertuzzi

Microsoft MVP,Gamer, Desenvolvedor e apaixonado por tecnologia!