Navigation et Paramètres URL
Bonjour,
Je suis relativement nouveau sur Silverlight et j'ai déjà quelques soucis ^^.
J'essaye de mettre en place une petite "Silverlight Navigation Application", qui travaillerait avec des paramètres URL. Pour l'instant, je fais des tests et n'arrivent à rien :s.
Dans mon fichier XAML du Main, j'ai mis :
Code:
1 2 3 4
| <uriMapper:UriMapping Uri="" MappedUri="/Views/Home.xaml"/>
<uriMapper:UriMapping Uri="/Home" MappedUri="/Views/Home.xaml"/>
<uriMapper:UriMapping Uri="/About" MappedUri="/Views/About.xaml"/>
<uriMapper:UriMapping Uri="/About?nom={nom}" MappedUri="/Views/About.xaml?nom={nom}"/> |
Le but est que quand je vais sur /About après avoir rempli un formulaire sur /Home, le nom soit passé en paramètre URL.
Dans /Home, sur le bouton d'envoi du formulaire, il y a l'appel de:
this.NavigationService.Navigate(new Uri(String.Format("/About?nom=" + nom), UriKind.Relative));
Par contre, je n'arrive pas à récupérer la variable nom dans /About.
J'ai tenté de nombreuses choses :
1 -
Code:
HtmlPage.Document.QueryString["nom"].ToString()
-> Je récupère une erreur 'Page not found' qui n'apparaît pas quand j'enlève la ligne
2 -
Code:
this.NavigationContext.QueryString["nom"];
-> Même problème
3 -
Code:
1 2 3
| Dictionary<string, string> urlparams = HtmlPage.Document.QueryString as Dictionary<string, string>;
string s = string.Empty;
urlparams.TryGetValue("nom", out s); |
-> Alors là il ne trouve pas de paramètres URL, je l'ai vérifié avec un urlparams.Count()
Le problème semble venir du fait que malgré que l'URL du navigateur soit
en appelant la fonction
Code:
HtmlPage.Document.DocumentUri.ToString();
il me renvoie
(J'ai même fait une fonction qui travaillait sur HtmlPage.Document.DocumentUri.ToString(); et récupérait les paramètres, mais vu qu'il n'y en a pas elle est inutile :s)
Voila, j'espère que vous pourrez m'aider ^^.
Merci d'avance ;-)
Naoris