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

Windows Forms Discussion :

[C#]Datagrid à partir de fichier XML(non formaté)


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 17
    Points : 16
    Points
    16
    Par défaut [C#]Datagrid à partir de fichier XML(non formaté)
    Est ce que quelqu'un pourrait me dire comment charger des données XML dans une datagrid afin de les visualiser pour ensuite les enregistrer dans une base de données. J'ai réussi à faire un parseur grace à une lecture de fichier mais je n'arrive pas à savoir comment enregistrer mes données pour les mettre dans une datagrid (Structs, array, class sachant que les données ne sont pas unifiés)???

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    801
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 801
    Points : 314
    Points
    314
    Par défaut
    Bonjour nutball,

    Moi j'utilise un dataset dans lequel je charge le fichier xml.
    Puis j'affiche le dataset dans mon datagrid.
    Un exemple ci-dessous:
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
     
     
                DATASET.ReadXml(new PathFile().file_log,XmlReadMode.Auto);
     
                for (int i = 0; i < DATASET.Tables["FILE"].Rows.Count; i++)
                {
                        try
                            {
     
                        DATAGRIDVIEW.Rows.Add();
                            DATAGRIDVIEW.Rows[i].Cells[0].Value = ImageList.Images[(string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(10)];
                            DATAGRIDVIEW.Rows[i].Cells[0].ToolTipText = (string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(10);
                            //Account (text)
                            DATAGRIDVIEW.Rows[i].Cells[1].Value = DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(1);
                            //Start Date (text)
                            DATAGRIDVIEW.Rows[i].Cells[2].Value = FormatDate((string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(4));
                            //StartHour (text)
                            DATAGRIDVIEW.Rows[i].Cells[3].Value = FormatHour((string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(5));
                            //End Date (text)
                            DATAGRIDVIEW.Rows[i].Cells[4].Value = FormatDate((string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(6));
                            //End Hour (text)
                            DATAGRIDVIEW.Rows[i].Cells[5].Value = FormatHour((string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(7));
                            //Filename (link)
                            DATAGRIDVIEW.Rows[i].Cells[6].Value = DATASET.Tables["FILE"].Rows[i].ItemArray.GetValue(1);
                            DATAGRIDVIEW.Rows[i].Cells[6].ToolTipText = FormatFileInfoTooltip(DATASET.Tables["FILE"].Rows[i]);
                            //Transmission status (text)
                            DATAGRIDVIEW.Rows[i].Cells[7].Value =((string)DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(8)!="")?DATASET.Tables["RUN"].Rows[i].ItemArray.GetValue(8):"---";
                            //Error (link)
     
                            if(!DATASET.Tables["error"].Rows[i].ItemArray.GetValue(0).GetType().Equals(typeof(System.DBNull)))
                            {
                                DATAGRIDVIEW.Rows[i].Cells[8].Value = (string)DATASET.Tables["error"].Rows[i].ItemArray.GetValue(0);
                                DATAGRIDVIEW.Rows[i].Cells[8].Value = "error";
                            }
     
                        }
                        catch {}
     
                     }

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    Merci pour la réponse, je vais me débrouiller avec ça et je reviens sur les ondes si je me nois....

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 6
    Points : 7
    Points
    7
    Par défaut Charger un xml puis datagridview
    DataSet ds = new DataSet();
    ds.ReadXML( "fichier.xml" );

    dataGridView1.DataSource = ds;
    dataGridView1.DataMember = ds.Tables[0];

Discussions similaires

  1. remplir datagrid à partir de fichier xml
    Par wajdiisi2007 dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 10/08/2007, 12h27
  2. iReport à partir d’un fichier XML
    Par jproto dans le forum iReport
    Réponses: 6
    Dernier message: 13/02/2007, 09h11
  3. [XML/CSS] Outil d'édition de fichier xml temporairement formaté
    Par Bloodscalp dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 02/10/2006, 07h54
  4. ComboBox dynamique à partir de fichier XML
    Par ikeaboy dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 28/07/2006, 09h54
  5. fichier xml non valide ...
    Par izbad dans le forum XML/XSL et SOAP
    Réponses: 9
    Dernier message: 13/04/2006, 11h31

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