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 :

Binding ItemsSource d'une combobox Silverlight 4


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Décembre 2010
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Décembre 2010
    Messages : 126
    Par défaut Binding ItemsSource d'une combobox Silverlight 4
    Bonjour,

    J'ai une combobox que je devrais binder sur des elements provenant d'une base de données SQL Server
    Donc pour précéder j'ai afficher mon Data Sources depuis le menu Data -> view data Source et j'ai drop and drag la table correpondante sur mon combobox ce qui a donné ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <ComboBox Grid.Row="2" Height="23" HorizontalAlignment="Left" Margin="154,6,0,0" Name="cbModeDinterchangePrioritaire" VerticalAlignment="Top" Width="256" ItemsSource="{Binding ElementName=modeInterChangeDomainDataSource, Path=Data}"  DisplayMemberPath="LabelModeInterChange"  >
     
    <riaControls:DomainDataSource  AutoLoad="True" d:DesignData="{d:DesignInstance my:ModeInterChange, CreateList=true}" Height="0" LoadedData="modeInterChangeDomainDataSource_LoadedData" Name="modeInterChangeDomainDataSource" QueryName="GetModeInterChangeQuery" Width="0">
                            <riaControls:DomainDataSource.DomainContext>
                                <my:MonContext x:Name="MonContext" />                            
                            </riaControls:DomainDataSource.DomainContext>
                        </riaControls:DomainDataSource>
    Cependant quand je compile et execute mon projet les elements du combobox ne sont pas chargé.
    J'ai vu sur plusieurs forum qu'on SL4 on doit pas utiliser les DomainDataSource pour binder une combobox
    Quelqu'un aurais une solution même en code behind (pas forcement côté xaml) pour que je puisse binder ma combobox avec ma table ???

    Merci d'avance de votre aide

  2. #2
    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 : 38
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    C'est un peu plus compliqué que ca en fait, bien que RiaServices masque ca!
    Il faut comprendre qu'il y'a une partie côté serveur et une partie côté Silverlight à faire. Silverlight n'accède pas directement à la base!
    Il faudrait diagnostiquer de manière un peu plus précise le problème.

  3. #3
    Membre confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Décembre 2010
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Décembre 2010
    Messages : 126
    Par défaut
    j'ai tenté aussi dans le code behind de ma page silverlight de faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    MonContext _context = new RPSMonContext();
     
     
    _context.Load(_context.GetModeInterChangeQuery());  
    cbModeDinterchangePrioritaire.ItemsSource = _context.ModeInterChanges;
    PS : cbModeDinterchangePrioritaire : c'est le nom de ma combobox

    mais ça marche pas, une solution pour mon binding ?

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Essaye de faire cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cbModeDinterchangePrioritaire.ItemsSource = _context.ModeInterChanges;
    Dans la callback de l'évènement Completed du Load car là, tu affectes un truc qui, potentiellement, n'est pas encore initialisé

  5. #5
    Membre confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Décembre 2010
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Décembre 2010
    Messages : 126
    Par défaut
    Merci Thomas de ta suggestion mais je ne vois pas ou se trouve le "callback de l'évènement Completed du Load "
    Par contre j'ai mis mon code précedent à savoir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    MonContext _context = new RPSMonContext();
     
     
    _context.Load(_context.GetModeInterChangeQuery());  
    cbModeDinterchangePrioritaire.ItemsSource = _context.ModeInterChanges;
    dans l'evenement "OnNavigatedTo" de ma page silverlight et la ça marche, par contre au debut il m'affiche la combobox vide et c'est seuelement 5 secondes apres qu'il l'a rempli
    C'est normal la aussi d'avoir un temps d'attente ?

  6. #6
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Citation Envoyé par NTIC13 Voir le message
    Merci Thomas de ta suggestion mais je ne vois pas ou se trouve le "callback de l'évènement Completed du Load "
    _context.Load(_context.GetModeInterChangeQuery()).Completed += ....

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

Discussions similaires

  1. [MVVM] Binding TwoWay sur une combobox
    Par Digilougm dans le forum Silverlight
    Réponses: 5
    Dernier message: 21/06/2011, 11h06
  2. Ajouter un binding vers null à une combobox
    Par sovitec dans le forum Silverlight
    Réponses: 6
    Dernier message: 10/02/2011, 15h59
  3. [Binding] DataGrid incluant une combobox
    Par Harry_polin dans le forum Windows Forms
    Réponses: 9
    Dernier message: 11/12/2008, 16h05
  4. [WPF] Binding d'une combobox
    Par mrrenard dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 14/04/2008, 10h58
  5. Rafraîchir une combobox bindée
    Par Zebeber dans le forum Windows Forms
    Réponses: 6
    Dernier message: 26/02/2007, 07h49

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