6
votes

Comment maintenir l'état d'application Silverlight après que l'utilisateur appuyait sur le bouton Actualiser le navigateur?

J'apprends Silverlight 3 et, dans tous mes tests, lorsque j'appuie sur le bouton Actualiser le navigateur, l'application SL redémarre.

Y a-t-il un moyen d'éviter cela?


0 commentaires

3 Réponses :


6
votes

stockage isolé. Vous pouvez vous enregistrer dans la définition et l'état d'application là-bas ...

http://silverlight.net/learn/learnvideo.aspx?video=65677

Je recommanderais toujours de construire votre application Silverlight de manière à économiser suffisamment d'état qu'un rafraîchissement ramende l'utilisateur à un emplacement significatif.

Vous voudrez peut-être regarder Silverlight3 Navigation: http://www.davidpoll.com/? p = 88

Si vous avez un problème énorme avec un utilisateur rafraîchissant l'application, vous pouvez tenter de faire sauter une nouvelle fenêtre de navigateur qui n'a pas de barre de ménubaire et d'outils ... mais vous rencontrerez des bloqueurs de popup ...

http://www.webdevelopersnotes.com/tatudials/javascript/creature_pop_ps_javascript.php3


0 commentaires

3
votes

afaik, vous ne pouvez pas annuler une demande de redémarrage de ce type. Ce que vous pouvez faire, c'est gérer l'événement de sortie dans votre application.xaml.cs et enregistrer les paramètres sur Isostore comme suggéré ci-dessus, puis les chargez dans l'événement de démarrage (même classe). Je suppose que vous pouvez en faire une transition transparente en les ramenant à l'état présent lors de l'événement de sortie.


0 commentaires

2
votes

Il n'est pas possible de garder l'état 'automatiquement'. Cependant, en utilisant Frame-navigation dans SL3 Vous pouvez obtenir un peu Niveau d'état: lorsque vous cliquez sur "Actualiser", l'application va redémarrer mais naviguera vers la même page qu'il était précédemment.

Quelque chose de similaire est fait dans Quince: http://quence.infragistics.com/#/ Recherche / ViewPattern $ motif = action + liens

La partie de l'URL après le numéro est lue par l'application et permet de naviguer au même endroit toujours.

Cela ne fonctionnera pas s'il y a beaucoup de données à persister, car vous devez garder l'état dans l'URL. Cependant, a l'effet secondaire intéressant de permettre une liaison profonde.


0 commentaires