2
respostas

Vídeo cortado, faltando explicações

O vídeo está faltando conteúdo, entre o vídeo anterior e esse, código aparecem sem explicação e sem explicar os conceitos dos Modes do Binding e OnPropertyChanged()

2 respostas

Oi Rafael,

Passei o seu comentário para a equipe de revisão dar uma olhada. Assim que tivermos uma posição te respondemos aqui beleza?

Obrigada por apontar o problema.

Bons estudos!

Abraço!

Olá, Rafael

O vídeo está faltando conteúdo, entre o vídeo anterior e esse, código aparecem sem explicação e sem explicar os conceitos dos Modes do Binding e OnPropertyChanged()

Os conceitos de mode e binding são explicados aos 09:57 do vídeo:

https://cursos.alura.com.br/course/xamarin-aplicativos-mobile-com-visual-studio-parte-1/task/23771

"Então o que ficou faltando pra gente é notificar o Xamarin Forms de que houve uma mudança numa das propriedades que estão sendo acessadas via Binding. E qual propriedade é essa? É a propriedade boolean TemFreioABS. Apesar de a gente estar exibindo a informação para o usuário de que o Freio ABS está ligado ou desligado, a gente não está notificando de fato no Xamarin Forms. Então a gente tem que fazer aqui uma estratégia de notificação do Xamarin Forms de que uma propriedade de binding está sendo modificada. A gente faz isso chamando um método que já faz parte de uma página do Xamarin Forms, que é o método chamado OnPropertyChanged. Então o OnPropertyChanged eu posso passar sem nenhum parâmetro e ele vai notificar a página de que houve uma mudança numa propriedade que faz parte do binding. Além disso, é bom fazer uma outra mudança aqui na nossa página, para modificar o tipo de binding que a gente está utilizando. Até agora, vimos como utilizar o binding simples, que é o binding que está simplesmente recebendo o valor lá do nosso code behind e está modificando a nossa página de acordo com esse valor que vem do código C#. Só que o contrário também precisa acontecer. Ou seja, nosso código C# tem que ser notificado de que houve uma mudança na nossa página. A gente vai fazer isso trocando o modo com que a gente faz o binding. Eu vou utilizar o modo TwoWay, que é um modo de notificação de duas vias. Ou seja, tanto a página é notificada e atualizada com o valor que vem do C#, quanto o contrário: a página notifica o código C# de que houve uma atualização. Então a gente vai colocar aqui o mode TwoWay nas outras propriedades também. E também no valor total."

Você pode encontrar informação mais detalhada nos documentos do Xamarin:

https://developer.xamarin.com/api/member/Xamarin.Forms.Element.OnPropertyChanged/p/System.String/

https://developer.xamarin.com/api/type/Xamarin.Forms.BindingMode/

Essa explicação é satisfatória? Se ficou alguma dúvida nos avise! Abraço!