IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Phone .NET Discussion :

Mettre à jour des données sur des ecrans dès que celles ci sont modifiées ailleurs


Sujet :

Windows Phone .NET

  1. #1
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut Mettre à jour des données sur des ecrans dès que celles ci sont modifiées ailleurs
    Bonjour,

    Dans mon application, j'ai un écran de paramétrage sur lequel on entre son nom.
    Le nom est stocké dans l'isolated storage.
    J'utilise ensuite ce nom dans beaucoup d’écran.

    J'aimerais que lorsque le nom est modifié dans l’écran de paramétrage, tous les écrans affichant ce nom se mettent à jour automatiquement.

    Mais comment faire?
    J'ai une classe qui accéde à l'isolated storage, cette classe est statique. mais cependant la couche de présentation des autres écran ne se met pas à jour bien que la valeur ai changé.

    Merci d'avance pour votre aide.
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

  2. #2
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Tu dois avoir une classe en mémoire qui gere tes paramètres globaux.

    Le plus simple est de la positionner comme propriété statique de la class App.

    Ce que tu stockes dans l'isolatedStorage ne devrait servir qu'a la persistance de l'information c'est à dire au moment ou tu charge l'info quand tu rentres dans l'application ou quand tu la sauve pour la quitter.
    .
    Pas de question technique en MP, merci.
    .
    Un emulator Gameboy Color pour Windows Phone ?
    c'est moi qui l'ai fait

  3. #3
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut
    Citation Envoyé par Samuel Blanchard Voir le message
    Le plus simple est de la positionner comme propriété statique de la class App.
    Merci pour ta réponse.

    Je vois pas trop comment faire cela?
    Peux tu me donner un exemple ou m'envoyer vers une ressource?

    Penses tu que si ma classe est statique, mes ecrans se mettront à jour sans à la modification des données sans executer une fonction ou déclencher un événements?
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

  4. #4
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Etant donné qu'on ne peut pas se binder sur des membres statiques avec Windows Phone(et à condition que tu utilises le binding), j'aurais fait une classe contenant tes paramètres et qui est disponible via un singleton (déclaré en ressource globale de l'application par exemple). Après tu peux facilement y accéder via le binding et si cette classe implémente INotifyPropertyChanged, le tour est joué!

  5. #5
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut
    Ok, je vais bien utiliser le binding, mais je vais creuser INotifyPropertyChanged que je ne connais pas.

    Merci.
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

  6. #6
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Dans ton App.cs

    tu mets ta classe (applelons la Settings) qui implemente la notification de changement dans l'app puis tu peux fixer le DataContext de ta page dans le code :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    public class Settings : INotifyPropertyChanged
    {
        public string Title
        {
              get
              {
                    return this.title;
              }
     
              set
              {
                     if( this.tile != value )
                     {
                          this.title = value;
                          // Methode de Notification a implementer
                          this.RaisePropertyChanged("Title");
                     }
              }
        }
    }
     
    // Dans la page MainPage
     
    public PhonePage MainPage
    {
        public void MainPage()
        {
               this.InitializeComponent();
              // Par exemple
              this.Layout.DataContext = App.Settings;
        }
    }

    Code non testé et sans doute plein de fautes
    .
    Pas de question technique en MP, merci.
    .
    Un emulator Gameboy Color pour Windows Phone ?
    c'est moi qui l'ai fait

  7. #7
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    J'ai écrit tout un article sur le binding (et donc au passage INotifyPropertyChanged)
    http://nathanaelmarchand.developpez....t-silverlight/

  8. #8
    Membre émérite
    Avatar de Samuel Blanchard
    Homme Profil pro
    Expert .NET
    Inscrit en
    Février 2010
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Expert .NET

    Informations forums :
    Inscription : Février 2010
    Messages : 1 504
    Points : 2 682
    Points
    2 682
    Par défaut
    Je te conseille cet article de Nathanel qui est une reference en la matière
    .
    Pas de question technique en MP, merci.
    .
    Un emulator Gameboy Color pour Windows Phone ?
    c'est moi qui l'ai fait

  9. #9
    Membre habitué Avatar de jubourbon
    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 540
    Points : 189
    Points
    189
    Par défaut
    Je vais regarder ça de tres pret
    Les meilleures sauces de salade sont sur www.sauce-salade.com
    SpBreak la pause SharePoint: SP Break

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Comment travailler sur des données stockées en mémoire, plutôt que sur une feuille
    Par wyzer dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/04/2011, 13h35
  2. Réponses: 3
    Dernier message: 15/02/2011, 17h17
  3. Relier des données sur des éléments d'une form
    Par Takumi dans le forum Windows Forms
    Réponses: 5
    Dernier message: 18/01/2010, 16h06
  4. Trigger pour mettre des droits sur des procedures et des vues
    Par briino dans le forum Développement
    Réponses: 3
    Dernier message: 23/09/2009, 09h44
  5. Etablir des statistiques sur des données
    Par tidav112 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 24/02/2009, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo