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

C# Discussion :

Element disparait lors du tri DataGridView.


Sujet :

C#

  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2009
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 66
    Par défaut Element disparait lors du tri DataGridView.
    Bonjour à tous,

    Je rencontre un problème avec mon DataGridView :

    • Je rempli mon DGV avec un DataTable contenant la requete SQL : SELECT * FROM Table1.
    • J'ajoute une colonne a mon DGV.
    • Je remplie cette nouvelle colonne avec des strings.


    Résultat : j'ai trois colonnes provenant de mon DataTable et une colonne provenant de mon ajout de colonne.
    Donc jusque la tout marche à la perfection.

    Mon problème est que j'ai besoin de garder la fonction de tri lors du clique sur l'entête d'une colonne.
    Donc quand je clique sur une entête de colonne :
    - Si je clique sur la colonne que je vient de créer rien ne se passe.
    - Si je clique sur une colonne provenant de mon dataTable, les enregistrements de cette colonne se trie parfaitement mais les enregistrements de la nouvelle colonne créée disparaissent.

    Je ne comprend pas pourquoi.

    J'espère que l'on pourra trouver une solution a mon problème .

    Merci d'avance.

    Cordialement,
    Hiken.

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Bonjour,

    La solution est d'ajouter la colonne au datatable et non au DGV.

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2009
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 66
    Par défaut
    Bonjour Graffito,

    Merci pour ta réponse aussi rapide.
    J'ai suivi ton conseil et j'ai ajouté mes colonnes a mon DataTable, et effectivement cela fonctionne parfaitement.

    J'ai juste une petite question.
    Une fois que j'ai ajouter mes colonnes, je l'ai rempli en passant par mon DataGridView :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     dataGridView1["Nom de la nouvelle colonne ajouté a mon DataTable", i].Value = "chaine de caractères";
    Cela fonctionne très bien et j'arrive maintenant a trier toutes mes colonnes.

    Selon toi,

    Est-ce la bonne manière d'ajouter du contenue a ma colonne, ou ça me posera des problème plus tard, pour d'éventuel autres tests ?

    Existe-t-il une autre façon de remplir ma colonne ?

    Encore merci.

    Hiken.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Par défaut
    bonjour,
    Tu as fais le boulot à moitié, si t'as rajouté tes colonnes dans ton DataTable pour bénéficier de toutes les facilités offertes par ce dernier, la logique voudrait que tu ajoutes les données également dans ton DataTable.
    nachtigal.

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2009
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 66
    Par défaut
    Merci pour ta réponse nachtigal,

    C'est bien ce que je me disais, j'ai ajouté mon texte à mon DGV au lieu du DataTable, car je ne vois pas vraiment comment faire pour ajouter des éléments à un Datable.
    Pour le moment je sais juste charger le résultat d'une requête dans un DataTable mais pas ajouter du contenu à celui-ci.

    Si tu peux m'éclairer sur la maniére de s'y prendre cela pourrait m'aider.

    Merci d'avance,
    Hiken.

  6. #6
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Salut

    Si tu as su ajouter une colonne a ta datatable il ne doit pas y avoir de probleme pour remplir ensuite cette colonne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dt.Rows[i]["NomDeColonne"]=Variable;

  7. #7
    Membre confirmé
    Inscrit en
    Septembre 2009
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 66
    Par défaut
    Salut olibara,

    Excellent ça marche niquel, je ne connaissais pas la syntaxe pour remplir la colonne.
    Tout est maintenant dans mon datatable, ce qui me permettra dans la suite de mon traitement de tout traiter en même temps.

    Encore merci pour votre aide à tous.

    Et à bientot sur Developper.net :p

    Hiken.

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

Discussions similaires

  1. Datagridview Focus lors du tri
    Par Akuraii dans le forum C#
    Réponses: 1
    Dernier message: 17/08/2012, 00h49
  2. Backcolor dans datagridview qui disparait apres un tri
    Par KaloOopS dans le forum Windows Forms
    Réponses: 15
    Dernier message: 19/06/2011, 09h13
  3. Réponses: 10
    Dernier message: 29/05/2008, 18h14
  4. Image dans DataGridView disparait lors du tri
    Par leon_2 dans le forum VB.NET
    Réponses: 1
    Dernier message: 27/11/2007, 13h03
  5. Réponses: 9
    Dernier message: 28/04/2004, 13h01

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