.net Maui Shell Navigation Pass Parameters

4 min read Jun 04, 2024
.net Maui Shell Navigation Pass Parameters

Navigation Shell avec des paramètres dans .NET MAUI

.NET MAUI offre une navigation flexible et puissante grâce à sa structure Shell. Vous pouvez facilement naviguer entre les différentes pages de votre application, mais il est parfois nécessaire de transmettre des données entre ces pages. C'est là que la transmission de paramètres entre les pages de la navigation Shell devient cruciale.

Comprendre la Navigation Shell

Le Shell de .NET MAUI est un système de navigation hiérarchique. Il permet de définir une structure de base pour votre application, en organisant les pages en différents niveaux. La navigation Shell vous permet de créer une expérience utilisateur intuitive en organisant les pages en un menu, un onglet ou une barre latérale.

Transmission de Paramètres

Il existe plusieurs façons de transmettre des paramètres lors de la navigation Shell dans .NET MAUI. Voici deux des méthodes les plus courantes:

1. Via la propriété Query:

Cette méthode est idéale pour transmettre de petites quantités de données, telles que des identifiants ou des valeurs booléennes. Vous pouvez utiliser la propriété Query de l'URL pour transmettre des paramètres à la page de destination.

Exemple:

// Page de départ
await Shell.Current.GoToAsync($"detail?id={itemId}");

// Page de destination
var itemId = int.Parse(string.IsNullOrEmpty(this.Query["id"]) ? "0" : this.Query["id"]);

2. Via un modèle de données:

Cette approche est plus adaptée pour transmettre des objets complexes, tels que des modèles de données ou des collections de données.

Exemple:

// Page de départ
var user = new User { Id = 1, Nom = "John Doe" };
await Shell.Current.GoToAsync($"{nameof(DetailPage)}?user={JsonConvert.SerializeObject(user)}");

// Page de destination
var userJson = this.Query["user"];
var user = JsonConvert.DeserializeObject(userJson);

Avantages de la transmission de paramètres

La transmission de paramètres lors de la navigation Shell présente de nombreux avantages, notamment:

  • Amélioration de la communication inter-pages: Permet aux pages de partager des informations et de s'influencer mutuellement.
  • Réduction de la duplication de code: Évite la duplication de code en transmettant des données aux pages de destination au lieu de les récupérer de nouveau.
  • Navigation plus dynamique: Permet de rendre la navigation plus dynamique en fonction des données transmises.

Conclusion

La navigation Shell est un élément essentiel de .NET MAUI, et la transmission de paramètres entre les pages la rend encore plus puissante et flexible. En utilisant les méthodes décrites ci-dessus, vous pouvez facilement transmettre des données entre les pages de votre application, ce qui améliore l'expérience utilisateur et rend votre code plus propre et plus efficace.

Related Post


Featured Posts