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 :

Probleme donnes datagrid, s'affiche seulement si clique


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 31
    Par défaut Probleme donnes datagrid, s'affiche seulement si clique
    Bonjour a tous !
    Je m'exuse pour le manque d'accent, clavier anglais ...

    Voila j'ai fait une page toute vide sur laquelle j'ai mis un datagrid, la propriété itemsource est remplis en code c# par une query.

    Le problème est que les donnes de la datagrid s'affiche seulement si je clique sur un des header des colonnes. Tant que je clique pas dessus, rien ne s'affiche.

    Au niveau du xaml, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <sdk:DataGrid AutoGenerateColumns="False" x:Name="dgFournisseurs" Margin="0,82,0,0" IsReadOnly="True" CanUserSortColumns="True" >
                <sdk:DataGrid.Columns>
                    <sdk:DataGridTextColumn Binding="{Binding Path=Fou_Code,Mode=TwoWay}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Code" Width="Auto" />
                    <sdk:DataGridTextColumn Binding="{Binding Path=Fou_Nom,Mode=TwoWay}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Nom" Width="Auto" />
                </sdk:DataGrid.Columns>
            </sdk:DataGrid>
    Au niveau du C#, voici le code : (Fournisseurs() est le constructeur de la page)
    Code : 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
     
    public Fournisseurs()
            {
                InitializeComponent();
                context.Load(context.GetFourGestionQuery());
                get_fournisseurs(true);
            }
     
            private void get_fournisseurs(bool etat)
            {
                if (etat == true)
                {
                    var query = (from data in context.FourGestions select data);
                    dgFournisseurs.ItemsSource = query;
                    dgFournisseurs.ItemsSource = query;
                }
                else
                    dgFournisseurs.ItemsSource = null;
            }
    Quelqu'un pourrait-il m'éclairer ?

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

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Ton call Load est fait de manière asynchrone, donc lorsque tu fais ta query derrière tes données ne sont surement pas encore arrivées du serveur.

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    context.Load(context.GetFourGestionQuery()).Completed += (o, e) => get_fournisseurs(true);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 31
    Par défaut
    Donc pour chaque methode qui utilise le contexte je dois mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    context.Load(context.GetFourGestionQuery()).Completed += (o, e) => ma_methode(param)
    ;
    ?

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

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Citation Envoyé par azerto00 Voir le message
    Donc pour chaque methode qui utilise le contexte je dois mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    context.Load(context.GetFourGestionQuery()).Completed += (o, e) => ma_methode(param)
    ;
    ?
    Ben si tu veux faire quelque chose avec les données venant de ta query juste après, alors oui.

    Cette ligne veut dire : lorsque tu as finis de charger les données de la query GetFourGestion, alors execute la méthode "ma_methode" (qui utilise les données et donc tu es maintenant sur que les données sont chargées).

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 31
    Par défaut
    Ok, merci beaucoup pour ces 2 réponses !
    Bonne soirée !

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

Discussions similaires

  1. [MySQL] Extraire des données d'une DB Sql, classer et afficher seulement la plus faible.
    Par BoD37 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/09/2009, 13h05
  2. probleme affichage données datagrid
    Par noname_971 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 02/04/2009, 17h09
  3. [XSLT] afficher seulement les données de id="2"
    Par paricilas dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 08/02/2007, 15h23
  4. [WAP/WML] Affiche seulement le code source !!!
    Par Alkmie dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 25/11/2003, 17h03
  5. Réponses: 2
    Dernier message: 23/11/2003, 18h44

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