2010-10-30 7 views
0

Si un utilisateur accède à une page qui affiche une vue "ajouter un élément" (#/items/add), je veux essentiellement ignorer cette URL lorsqu'il clique sur "retour" après avoir sauvegardé l'élément.Existe-t-il un analogue de "locate.replace()" dans Silverlight 4 Navigation?

Comment est-ce que je peux faire ceci?

Voici le comportement que je suis après plus en détail ... si l'utilisateur a accédé à et est actuellement sur cette url silverlight:

#/articles/liste

quand ils cliquent sur le bouton "ajouter" ... ils sont à naviguer

#/articles/ajouter

après qu'ils économisent, ils naviguaient à

#/articles/99 (où 99 est le nouvel identifiant de l'article.)

Quand ils cliquent sur le bouton de retour d'ici, je les veux rentrerez dans

#/articles/liste

+0

Je suppose que si tout le reste échoue, je pourrais utiliser javascript pour faire le locate.replace, non? –

+0

Je suis également intéressé par la navigation silverlight. Je ne peux pas donner une réponse autoritaire mais je lisais ceci http://www.silverlightshow.net/items/The-Silverlight-3-Navigation-Framework.aspx – MikeAinOz

Répondre

0

J'ai pu sauter une URL particulière en manipulant le Navigati événement ng du cadre et de faire quelque chose comme ça dans le corps du gestionnaire:

if (SomehowDecideToSkipThisOne(e)) 
{ 
    e.Cancel = true; 
    Frame.StopLoading(); 
    Frame.Navigate(uriToRedirectTo); 
} 

Cependant, le problème réside dans la façon de mettre en œuvre SomehowDecideToSkipThisOne car selon MSDN, "Any navigation request that the user initiates through a Web browser (including using the back or forward button of the Web browser) is represented as a New type of navigation."

Par conséquent, je ne peux pas savoir quand l'utilisateur va réellement "revenir" quand ils cliquent sur le bouton de retour sur leur navigateur. Donc, maintenant je pense que je vais décider de passer l'utilisation de cette fonctionnalité d'autant plus que je n'en ai pas besoin pour le référencement. Je pensais juste que ce serait une belle amélioration pour mon application intranet. C'est trop difficile à supporter correctement dans ce scénario.

+0

En fait, je peux toujours utiliser la navigation mais je n'utiliserai pas pour naviguer vers les écrans "ajouter un article". –

+0

La réponse est fondamentalement "Non". –