Associação de dados

Browse sample. Navegue pelo exemplo

Um aplicativo .NET Multi-platform App UI (.NET MAUI) consiste em uma ou mais páginas, cada uma das quais normalmente contém vários objetos de interface do usuário chamados modos de exibição. Uma das principais tarefas do aplicativo é manter essas exibições sincronizadas e acompanhar os vários valores ou seleções que elas representam. Geralmente, os modos de exibição representam valores de uma fonte de dados subjacente, e os usuários manipulam esses modos de exibição para alterar esses dados. Quando a exibição é alterada, os dados subjacentes devem refletir essa alteração e, da mesma forma, quando os dados subjacentes são alterados, essa alteração deve ser refletida na exibição.

Para lidar com essas alterações com êxito, o aplicativo deve ser notificado sobre alterações nesses modos de exibição ou nos dados subjacentes. A solução comum é definir eventos que sinalizam quando uma alteração ocorre. É possível então instalar um manipulador de eventos que é notificado sobre essas alterações. Ele responde transferindo dados de um objeto para outro. No entanto, quando há muitas exibições, também deve haver muitos manipuladores de eventos, o que resulta em muito código clichê.

A vinculação de dados automatiza essa tarefa e torna os manipuladores de eventos desnecessários. As associações de dados podem ser implementadas em XAML ou código, mas são muito mais comuns em XAML, onde ajudam a reduzir o tamanho do arquivo code-behind. Ao substituir o código de procedimento em manipuladores de eventos por código declarativo ou marcação, o aplicativo é simplificado e esclarecido.

A vinculação de dados é, portanto, a técnica de vincular propriedades de dois objetos para que as alterações em uma propriedade sejam refletidas automaticamente na outra propriedade. Um dos dois objetos envolvidos em uma associação de dados quase sempre é um elemento derivado de View e que faz parte da interface visual de uma página. O outro objeto é uma das seguintes opções:

  • Outro derivado de View, geralmente na mesma página.
  • Um objeto em um arquivo de código.

Ligações de dados entre dois View derivados são frequentemente mostradas nesses artigos, para fins de clareza e simplicidade. No entanto, os mesmos princípios podem ser aplicados às associações de dados entre um View e outros objetos. Quando um aplicativo é criado usando a arquitetura MVVM (Model-View-ViewModel), a classe com dados subjacentes geralmente é chamada de viewmodel.

Importante

O .NET MAUI marca atualizações de vinculação ao thread da interface do usuário. Ao usar o MVVM, isso permite que você atualize as propriedades viewmodel vinculadas a dados de qualquer thread, com o mecanismo de associação do .NET MAUI trazendo as atualizações para o thread da interface do usuário.