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

Silverlight Discussion :

[SL 4] [RIA MVVM] Perte de binding dans les combobox


Sujet :

Silverlight

  1. #1
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 143
    Points : 2 190
    Points
    2 190
    Billets dans le blog
    3
    Par défaut [SL 4] [RIA MVVM] Perte de binding dans les combobox
    Bonjour,

    je vais tenter d'expliquer mon souci même si c'est assez "étrange" :

    J'ai un ListBox binder sur une ObservableCollection et lorsqu'on sélectionne un item dans la liste on affecte une propriété binder : "SelectedBDC" :

    Code de bind sur la ListBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      ItemsSource="{Binding ListCommandes}" 
                          SelectedItem="{Binding SelectedBDC, Mode=TwoWay}"

    J'ai donc une combobox binder sur SelectedBDC comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      ItemsSource="{Binding ListeTrains}"
                                      SelectedValue="{Binding SelectedBDC.IDTRAIN, Mode=TwoWay}"
    Pour sélectionner l'item correspondant à la sélection de la ListBox j'utilise donc la propriété IDTRAIN de mon SelectedBDC...

    Et donc la question qui tue :

    Quand je sélectionne dans le ListBox un SelectedBDC dont l'IDTRAIN existe bien il le met à jour dans le Combobox..
    Si je vais sur un SelectedBDC dont l'IDTRAIN n'existe pas la valeur de la Combobox est vide mais bien sur je garde la liste

    EN REVANCHE : si je reviens alors sur un SelectedBDC dont l'IDTRAIN existe : FINI... je perds le bindind et ma combobox ne se met plus à jour.

    Quelqu'un aurait-il une idée ou une astuce à ce niveau malgré ces explications très courtes ?

    En vous remerciant d'avance,

  2. #2
    Membre expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Points : 3 958
    Points
    3 958
    Par défaut
    Et en passant le binding de la combo en OneWay ?

  3. #3
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 143
    Points : 2 190
    Points
    2 190
    Billets dans le blog
    3
    Par défaut
    Merci pour ta réponse.. Malheureusement ça ne marche pas.

    En fait j'ai oublié de dire que j'ai essayé des milliers de solution et le problème est la : dès qu'on prend un élément n'appartenant pas à la combobox (donc le null dans notre cas) alors on perd le binding.

    Et moi je ne veux pas rajouter un élément vide... Je veux qu'il n'y est rien dedans et que seuls les items de la liste soient sélectionnables.

  4. #4
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Je me demande si ton probleme n'aurait pas un rapport avec ce bug

    https://connect.microsoft.com/Visual...editem-binding

    Sinon essaye de voir si tu ne peux pas utiliser la nouveau parametre de Binding FallbackValue.

    Sinon regarde peut-etre la

    http://forums.silverlight.net/forums...76/402124.aspx

  5. #5
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2003
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 143
    Points : 2 190
    Points
    2 190
    Billets dans le blog
    3
    Par défaut
    YEs, c'est bien et bel un bug de Silverlight résolu en créant un composant dérivé qui gère cette valeur nulle

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/05/2013, 12h48
  2. [FAQ] Perte des marges dans les états Access
    Par Gretch_34 dans le forum Contribuez
    Réponses: 10
    Dernier message: 27/09/2011, 12h39
  3. Binding dans une combobox
    Par padodanle51 dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 07/06/2011, 15h15
  4. [Batch] if imbriqués, perte de données dans les variables '?'
    Par THKKK dans le forum Scripts/Batch
    Réponses: 11
    Dernier message: 27/05/2010, 15h11

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