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

ASP.NET Discussion :

[C#] Positions d'Eléments triés d'un dataview


Sujet :

ASP.NET

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut [C#] Positions d'Eléments triés d'un dataview
    Bonjour,

    voila j'ai un dataset à partir duquel je fait un dataview trié (Sort sur le dataset).

    Le problème c'est que je dois naviguer sur les éléments du dataview mais en fait je n'arrive pas à récupérer l'ordre des éléments du dataview.

    J'ai mème réussi à récupérer le rowID mais il se base sur l'ordre initial du dataset.

    J'ai aussi rempli un Arraylist mais le parcours des éléments se fait aussi sur l'ordre initial du dataset.

    Je ne sais plus quoi faire et suis ouvert àtout type de suggestion.

    Merci pour tout.

    A+

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Personne n'a d'idees??

  3. #3
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    reprenons stp
    1. tu as un dataset qui contient une ou plusieurs table de données :
    2. tu as besoin de récupérer une des tables dans une DataTable :
    3. tu dois trier la DataTable, mais de quel tri tu parles :
    4. tu dois inserer cette DataTable dans une Dataview
    5. tu veux en faire quoi ? et à quel fin :

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Oui j'ai déjà une table de dataset sur laquelle j'ai fait un .Sort
    (Tri sur une colonne). Le Dataview correspondant à la table du dataset trié est passé en session et récupéré par une autre page qui à besoin de navigué sur le dataview (Navigation sur les éléments ordonés).

    Mon problème c'est que quoi que je fasse je navigue sur les élément du dataset donc éléments non triés.

    Je n'arrive pas à récupérer un index sur le dataview. Il conserve en fait l'index du dataset.

    Exemple:

    voici les éléments du dataset

    INDEX --- VALEURS
    1 UN
    2 DEUX
    3 TROIS


    Voici les éléments dataview trié

    INDEX --- VALEURS
    2 DEUX
    1 UN
    3 TROIS

    Je n'arrive donc pas à avoir:

    INDEX --- VALEURS
    1 DEUX
    2 UN
    3 TROIS


    J'espere que c'est plus clair...

    Merci de vos réponses.

  5. #5
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Théoriquement ce que tu veux n'est pas possible avec la même datatable,
    l'astuce serait donc qu'à chaque Sort soit recréer une nouvelle Datatable, à partir de celle triée

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Merci.

    Mais comment je peux faire pour créer une nouvelle datatable à partir de celle triée?

    Encore merci...

  7. #7
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par mardoch
    Merci.Mais comment je peux faire pour créer une nouvelle datatable à partir de celle triée?Encore merci...
    Ceci est un exemple à adapter à ta botte
    sans oublier bien sûr de corriger certainement mes étourderies
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    Private DataTable NouvelleSource(DataTable sortTable)
       {
         int nbrecolonnes = sortTable.Columns.Count;
         int nbrelignes = sortTable.Rows.Count;
         DataTable table = new DataTable();
         DataRow currentRow;
         DataRow ligne;
         string nom;
         int i;
         int j;
         For (i = 0; i < nbrecolonnes; i++)
           {
              nom = sortTable.Columns[i].ColumnName;
              colonne = new DataColumn(nom);
              colonne.ExtendedProperties.Add("SortExpression", nom);
              table.Columns.Add(colonne);
           }
          For (i = 0; i < nbrelignes; i++)
            {
               ligne = table.newRow();
               For (j = 0; j < nbrecolonnes; j++)
                 {
                   currentRow = sortTable.Rows[i];
                   ligne[j] = currentRow[j];
                 }
     
               table.Rows.Add(ligne);
             }
          return table;
      }

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Merci pour tout.....

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Ca ne marche toujours pas.

    La table créée ne tient pas compte de l'ordre de tri.

    Merci de votre aide.

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    En fait je voudrais savoir

    sur la ligne :


    colonne.ExtendedProperties.Add("SortExpression", nom);

    C'est quoi "SortExpression"? On met ca ou la colonne de tri?

    Je ne comprend pas cette string.

    Merci.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    En fait je crois que le probleme c'est que

    currentRow = sortTable.Rows[i]; reprend encore la valeur de l'index initial de la table non triée

  12. #12
    Nouveau candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 2
    Par défaut
    Est-ce que tu saurais mettre une copie de ton code stp? Ca permettrait de voir un peu plus claire je pense.

    Pour ce qui est de la copie d'une datatable je pense que le plus simple est de faire DataTable newTable = oldTable.Clone()

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Je n'ai pas trop de code à montrer si ce n'est ce que j'ai déjà dis....


    Comment faire pour parcourir une table suivant son ordre de tri.
    Tout ce que j'ai fait jusqu'a présent me donne l'ordre intial dans la table non trié.

    Le clone de la table donne la mème chose.


    Ca ne doit pas être sorcier mais franchement je n'y arrive pas...

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Je n'ai pas trop de code à montrer si ce n'est ce que j'ai déjà dis....


    Comment faire pour parcourir une table suivant son ordre de tri.
    Tout ce que j'ai fait jusqu'a présent me donne l'ordre intial dans la table non trié.

    Le clone de la table donne la mème chose.


    Ca ne doit pas être sorcier mais franchement je n'y arrive pas...

  15. #15
    Nouveau candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 2
    Par défaut
    Quand tu affiches les resultats est-ce que tu parcours un datatable ou bien un dataview?

    j'imagine que tu dois bien avoir du code de ce parcours. essaie de le poster si tu sais.

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 18
    Par défaut
    Voila j'ai trouvé.

    En fait c'etait tout bête.

    On peut faire MonDataview[index] et on se positionne directement sur la ligne triée du Dataview.

    Merci pour tout.

    A+

    Mardoch.

  17. #17
    Invité de passage
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Septembre 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 1
    Par défaut
    Merci Mardoch, j'ai aussi bité sur ce problème, merci de ton aide.

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

Discussions similaires

  1. [BINDINGSOURCE] Perte de position lors du tri
    Par freud dans le forum Windows Forms
    Réponses: 6
    Dernier message: 21/12/2007, 11h55
  2. tri dans un dataview sur un champ numeric
    Par dietrich dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 10/05/2007, 10h45
  3. [XSLT] [JavaScript] tri + affichage à partir d'une position
    Par Fabouney dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 21/11/2006, 08h46
  4. [C#/DataView] Pourquoi mon tri ne donne pas le resultat escompté ?
    Par Low-Fi dans le forum Accès aux données
    Réponses: 1
    Dernier message: 12/08/2006, 22h15
  5. Réponses: 3
    Dernier message: 23/02/2006, 18h14

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