Maison > développement back-end > C++ > Comment transmettre efficacement des valeurs entre les pages XAML ?

Comment transmettre efficacement des valeurs entre les pages XAML ?

Barbara Streisand
Libérer: 2025-01-03 14:14:40
original
892 Les gens l'ont consulté

How to Efficiently Pass Values Between XAML Pages?

Transmission de valeurs entre des pages XAML

La transmission de paramètres entre des pages XAML est un aspect fondamental d'une conception d'application efficace. Que vous parcouriez les pages d'une application Windows Phone, Silverlight, WPF ou Windows 8, comprendre les méthodes appropriées pour transmettre des données améliorera les fonctionnalités et l'expérience utilisateur de votre application.

1. Utilisation de la chaîne de requête

Pour un transfert de données simple, la chaîne de requête peut être utilisée. Les données transmises via cette méthode doivent être converties en chaînes et codées en URL.

Page de navigation :

page.NavigationService.Navigate(new Uri("/Views/Page.xaml?parameter=test", UriKind.Relative));
Copier après la connexion

Page de destination :

string parameter = string.Empty;
if (NavigationContext.QueryString.TryGetValue("parameter", out parameter)) {
    this.label.Text = parameter;
}
Copier après la connexion

2. L'utilisation de NavigationEventArgs

NavigationEventArgs permet d'accéder aux paramètres transmis via les appels de méthode pendant la navigation.

Page de navigation :

page.NavigationService.Navigate(new Uri("/Views/Page.xaml?parameter=test", UriKind.Relative));

// and ...

protected override void OnNavigatedFrom(NavigationEventArgs e)
{
    Page destinationPage = e.Content as Page;
    if (destinationPage != null) {

        destinationPage.PublicProperty = "String or object..";
    }
}
Copier après la connexion

Page de destination :

// Use the value of "PublicProperty"..
Copier après la connexion

3. Utilisation de la navigation manuelle

La navigation manuelle permet aux paramètres personnalisés de passer par le constructeur.

Page de navigation :

page.NavigationService.Navigate(new Page("passing a string to the constructor"));
Copier après la connexion

Page de destination :

public Page(string value) {
    // Use the value in the constructor...
}
Copier après la connexion

Différence entre Uri et Manuel Navigation

La distinction clé réside dans le cycle de vie de l'application. Les pages créées manuellement sont conservées en mémoire, contrairement aux pages parcourues via Uri.

Passer des objets complexes

Les méthodes 1 et 2 peuvent être utilisées pour transmettre des objets complexes, ou bien, des propriétés personnalisées peuvent être ajouté à la classe Application ou les données peuvent être stockées dans Application.Current.Properties.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal