Trier une base de donnée liée [Résolu]

Signaler
Messages postés
9
Date d'inscription
jeudi 9 mars 2006
Statut
Membre
Dernière intervention
15 mars 2007
-
FanchPot
Messages postés
9
Date d'inscription
jeudi 9 mars 2006
Statut
Membre
Dernière intervention
15 mars 2007
-
Bonjour,

Je débute dansla gestion des données sous c# et je suis face à un prblème qui doit être simple mais que je n'arrive pas à résoudre..
J'ai deux tables(X et Y) qui sont liées par une FK, j'affiche dans un data grid view les données de la première table et dans un second les données de la seconde tabe (Y) en fonction de l'element sélectionné dans la table X. Le problème c'est que je veux trier les données par date de la plus récente à la plus ancienne lors de leur affichage dans la table Y.

J'ai bien trouvé la solution suivante :

 private void tableXDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            tableYDataGridView.Sort(tableYDataGridView.Columns[0], ListSortDirection.Descending);
        }

tableYDataGridView.Columns[0] contient la date.

Le problème c'est que les données sont d'abord affichées puis triées ce qui n'est pas trop (même si l'opération est rapide, elle est visible..)

Y a t'il une autre solution ? Peut être faut-il agir directement sur la base de données et non sur le dataGridView?

Merci de votre aide
Fanch

2 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
42
Salut,

En fait il faut simplement que tu affectes la propriété "Sort" de ton BindingSource (ou de ta vue, enfin bref, de ce qui est bindé a ton DataGridView ;) ) Tes données seront trées automatiquement, sans avoir a appeler la méthode Sort() de ton DataGridView.
Mx
MVP C# 
Messages postés
9
Date d'inscription
jeudi 9 mars 2006
Statut
Membre
Dernière intervention
15 mars 2007

Salut,

Merci pour ta réponse c'est tout à fait ce que je cherchais ! C'est vrai qu'entre BindingSource, Table Adapter, DatagridView ... il y a de quoi se perdre !

Encore merci
FanchPot