Histórico da Página
Dica | ||
---|---|---|
| ||
Compare navigation com dependency_injection |
Painel | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||
O .NET MAUI inclui suporte para navegação de página, que normalmente resulta da interação do usuário com a interface do usuário ou do próprio aplicativo como resultado de alterações internas de estado de objetos. A lógica de navegação pode residir no code-behind de uma View ou em um ViewModel associado a dados. Embora colocar a lógica de navegação em uma View possa ser a abordagem mais direta, ela não é facilmente testável por meio de testes de unidade. Colocar a lógica de navegação em classes de ViewModel significa que a lógica pode ser verificada por meio de testes de unidade. Além disso, o ViewModel pode implementar a lógica para controlar a navegação para garantir que certas regras de negócios sejam aplicadas. Por exemplo, um aplicativo pode não permitir que o usuário saia de uma página sem primeiro garantir que os dados inseridos sejam válidos. Um serviço de navegação é normalmente invocado a partir de ViewModels, a fim de promover a testabilidade. No entanto, navegar para Views dos ViewModels exigiria que os ViewModels fizessem referência a View e, particularmente, Views às quais o ViewModel ativo não está associado, o que não é recomendado. Portanto, o MauiNavigationService apresentado aqui especifica o tipo de ViewModel como o destino para o qual navegar. O aplicativo multiplataforma MinhaQualidadeMaui usa aclasse MauiNavigationService para fornecer navegação ao ViewModel. Essa classe implementa ainterface INavigationService, que é mostrada no seguinte exemplo de código:
Essa interface especifica que uma classe de implementação deve fornecer os seguintes métodos:
|
Painel | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
O .NET MAUI fornece várias maneiras de navegar em um aplicativo. A maneira tradicional de navegar é com aclasse A navegação é realizada dentro das classes ViewModel invocando um dosmétodos
O exemplo de código a seguir mostra ométodo
O controle |
Painel | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
Ométodo Por exemplo, aclasse
Este método invoca a navegação para arota O
Oatributo |