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

VB.NET Discussion :

DataGridView et fichiers XML


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut DataGridView et fichiers XML
    Bonjour,

    J'ai crée une application qui lit un fichier XML et qui l'affiche dans un DataGridView. Chaque ligne du tableau correspond à un nœud dans mon fichier xml(la 2e ligne correspond au 2e nœud.. Avec 6 champs qui correspond aux 6 enfants d'un nœud..).

    J'aimerais lorsque que je modifie le champ d'une ligne, que l'élément enfant du nœud se modifie en même temps dans le fichier XML.

    Le plus intéressent je pense serait de savoir comment se positionner directement sur un N ème nœud correspondant à une ligne pointé qu'un peut obltenir avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim y As Integer = Grid.CurrentCellAddress.Y
    merci

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Le plus simple serait d'utiliser la sérialisation XML. Tu charges ton fichier XML dans une liste d'objet, et tu lies la grille à cette liste d'objet. Quand tu modifies une valeur dans la grille, ça modifie l'objet, et quand tu resérialises la liste, le XML contient les modifs...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Merci c'est déjà une bonne piste.

    Mais justement j'avais déjà crée un objet, mon projet étant un gestionnaire de budget se présentant dans un tableau via des champs tels que date,...débit, crédit, solde. J'ai gérer l'affichage de cette manière :

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
        Public Class operation 'declaration de de la classe opération
            Private dateO, type, desc, debit, credit, solde As String
     
     
     
            '  parametre du constructeur
            Public Sub New(ByVal dateC As String, ByVal typeC As String, ByVal descC As String, ByVal debitC As String, ByVal creditC As String, ByVal soldeC As String)
                dateO = dateC
                type = typeC
                desc = descC
                debit = debitC
                credit = creditC
                solde = soldeC
     
            End Sub
     
            Property dateC() As String '   
                Get
                    Return dateO
                End Get
                Set(ByVal Value As String)
                    dateO = Value
                End Set
            End Property
            Property typeC() As String '   
                Get
                    Return type
                End Get
                Set(ByVal Value As String)
                    type = Value
                End Set
            End Property
            Property descC() As String '   
                Get
                    Return desc
                End Get
                Set(ByVal Value As String)
                    desc = Value
                End Set
            End Property
            Property debitC() As String '   
                Get
                    Return debit
                End Get
                Set(ByVal Value As String)
                    debit = Value
                End Set
            End Property
     
            Property creditC() As String '   
                Get
                    Return credit
                End Get
                Set(ByVal Value As String)
                    credit = Value
                End Set
            End Property
     
            Property soldeC() As String '   
                Get
                    Return solde
                End Get
                Set(ByVal Value As String)
                    solde = Value
                End Set
            End Property
     
     
            ReadOnly Property affiche() As String()
                Get
                    Dim row As String() = {dateC(), typeC(), descC(), debitC(), creditC(), soldeC()}
                    Return row
                End Get
            End Property
     
        End Class
     
     
        Private Sub PrintOPE()
            Dim i As Integer
     
     
            Dim c0 As String
            Dim c1 As String
            Dim c2 As String
            Dim c3 As String
            Dim c4 As String
            Dim c5 As String
     
     
            Dim Tligne(nbOPE) As operation
     
     
     
     
            For i = 1 To nbOPE
                courant = courant.FirstChild
                c0 = courant.InnerText
     
                courant = courant.NextSibling
                c1 = courant.InnerText
     
                courant = courant.NextSibling
                c2 = courant.InnerText
     
                courant = courant.NextSibling
                c3 = courant.InnerText
     
                courant = courant.NextSibling
                c4 = courant.InnerText
     
                courant = courant.NextSibling
                c5 = courant.InnerText
     
     
     
     
                Tligne(i) = New operation(c0, c1, c2, c3, c4, c5)
     
     
                With Me.tope.Rows
                    .Add(Tligne(i).affiche())
                End With
                courant = courant.ParentNode
                courant = courant.NextSibling
            Next
     
        End Sub


    Pourrais-je sérialiser ce même objet sachant que c'est un tableau d'objet en plus ?

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    Pourrais-je sérialiser ce même objet sachant que c'est un tableau d'objet en plus ?
    Oui

    Par contre, pourquoi les propriétés de ton objet sont toutes de type String ?
    C'est pas très adéquat pour stocker des dates ou des montants...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Les type sont tous en string car j'utilise un tableau de string pour afficher chacune des lignes via un tableau d'objet. Le tableau de string correspond donc à une ligne je ne peux pas créer un tableau de plusieurs types. En gros l'objet ne sert que à afficher

    Jusque la ce n'est pas gênant pour ajoute et je me suis débrouillé pour créer une procédure qui ajoute une opération dans le fichier XML et qui calcule le solde ensuite il a juste fallut rappeler la procédure d'affichage qui relit le xml avec les nouveau éléments. Oui je sais tu doit penser que je suis un programmeur barbare lol mais je débute le VB.net.

    Bilan : affichage, ajout => Tous va bien
    Modifier, supprimer => Comme on à bien compris mes objet ne sont pas lier aux XML ces 2 fonctions sont difficilement réalisable

    Je me penche à présent sur le changement des types d'attribut de mon objet que tu ma fait remarquer car pour la sérialisation c'est problématique et de la conversion C# en vb pour le lien que du ma donnée.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    Les type sont tous en string car j'utilise un tableau de string pour afficher chacune des lignes via un tableau d'objet. Le tableau de string correspond donc à une ligne je ne peux pas créer un tableau de plusieurs types. En gros l'objet ne sert que à afficher
    Euh... tu veux dire que tu remplis le DataGridView manuellement ? ça sert à rien, à part à perdre du temps et à introduire des bugs...
    Il suffit de prendre ta liste d'objets et de la définir comme DataSource du DataGridView :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim lst As List(Of operation) = ...
     
    dataGridView1.DataSource = lst
    En plus, en faisant ça, les objets de la liste sont automatiquement modifiés quand tu modifies les valeurs de la grille

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Ouiiii il me semble être déjà tomber sur quelque chose comme ça dans mes recherche mais je pensais pas que s'était aussi utile et efficace que ça.
    De plus je ne connais pas exactement la syntaxe mais j'ai bataillé pour la trouver avec les ressources sur le net je suis arrivée à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim lst As List(Of operation) 
     
     Dim lst As List(Of operation)
     
            lst = New List(Of operation)
     
            lst.Add(New operation("23/11/2009", "chèque", "Gaz Oil", "100", "0", "900"))
     
            tope.DataSource = lst
    ça fonctionne mais avec un petit bug : j'ai déjà créer mon datagridview avec les champs, dès que j'effectue le traitement précèdent il rajoute les colonnes en plus de celle que j'ai créer mais je suppose qu'il faut que je supprime celle de base dans le Grid .. ?

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    ça fonctionne mais avec un petit bug : j'ai déjà créer mon datagridview avec les champs, dès que j'effectue le traitement précèdent il rajoute les colonnes en plus de celle que j'ai créer mais je suppose qu'il faut que je supprime celle de base dans le Grid .. ?
    Mets la propriété AutoGenerateColumns du DataGridView à False, et définis les colonnes manuellement, en mettant dans le DataPropertyName de la colonne le nom de la propriété à afficher. Tu peux aussi faire ça en mode design, en choisissant ta classe comme source de données

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Oui merci c'est bon pour le liaison du datasource au datagrid. Il me manque plus que sérialiser. Mais je crois pas avoir très bien compris car il y a des erreurs dans mon code.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim test As operation
            test = New operation("23/11/2009", "chèque", "Gaz Oil", "100", "0", "900")
     
     
            Dim sw As StreamWriter
            Dim xs As XmlSerializer
            xs = New XmlSerializer(GetType(operation))
     
                Using StreamWriter sw As New StreamWriter("ope.xml")
                xs.Serialize(sw, test)
            End Using
    Il me souligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Using StreamWriter sw As New StreamWriter("ope.xml")
    j'ai importé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Imports System.Xml.Serialization
    Imports System.IO.StreamWriter
    Imports System.IO.TextWriter

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Comme ça, ça devrait être bon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Using sw As  New StreamWriter("ope.xml")
    Il faudrait que j'envisage de faire une version VB.NET de mon article, mais pour l'instant j'ai la flemme

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    OK, j'ai exécuté le code et
    Impossible de sérialiser l'objet car il y a pas de constructeur sans paramètre.
    Faut il vraiment que j'enlève les paramètres ? Car sinon c'est plus un objet enfin c'est un peut chambouler dans ma tête, ça fait 2 semaines que je fait du VB les objet c'est récent pour moi aussi puis la je fait les collection en cour.

    Le cerveaux surchauffe lol.

  12. #12
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    Faut il vraiment que j'enlève les paramètres ?
    Non, il faut juste que tu ajoutes un constructeur sans paramètre. Tu peux laisser celui qui existe déjà.

    Citation Envoyé par realtux Voir le message
    Car sinon c'est plus un objet
    Ben si, rien ne dit qu'un objet doit avoir un constucteur avec des paramètres...

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    OK c'est bon à savoir.

    En tous cas ça marche ! mais avec quelques petits bugs voici la structure que j' obtient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <operation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <dateO>23/11/2009</dateO>
      <type>chèque</type>
      <desc>Gaz Oil</desc>
      <debit>100</debit>
      <credit>0</credit>
      <solde>900</solde>
      <dateC>23/11/2009</dateC>
      <typeC>chèque</typeC>
      <descC>Gaz Oil</descC>
      <debitC>100</debitC>
      <creditC>0</creditC>
      <soldeC>900</soldeC>
    </operation>
    J'aimerais obtenir ceci :

    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
    <budget xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <operation>
      <date>23/11/2009</date>
      <type>chèque</type>
      <description>Gaz Oil</description>
      <debit>100</debit>
      <credit>0</credit>
      <solde>900</solde>
    </operation>
     
    <operation>
    ........
    </operation>
     
    </budget>
    Et aussi comme cette sérialisation est en effet très puissante comment pourrais-je faire en sorte qu'après que l'utilisateur est saisie la date, type... les donnée récupérées se sérialise dans le XML à la suite

    J'avais déjà crée ma procédure d'ajout mais j'ai utilisé "racine.AppendChild..."

  14. #14
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    C'est la liste d'opérations qu'il faut sérialiser, là tu as sérialisé une seule opération. Par contre, si tu sérialises la liste tu auras comme élément racine <ArrayOfOperation>. Si tu veux avoir <budget> comme élément racine, il faut que tu crées une classe budget qui contient la liste, et que tu marques la liste avec l'attribut XmlElement, comme indiqué ici (sous la remarque "Cas particulier des collections")

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    OK d'accord merci beaucoup pour la doc, je testerai demains car j'ai cour le matin. J'espère que c'est pas trop compliqué.
    Sinon en sérialisant la liste j'aurais toujours les doublons dans le xml ?

  16. #16
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    J'espère que c'est pas trop compliqué.
    Non, c'est tout bête en fait...

    Citation Envoyé par realtux Voir le message
    Sinon en sérialisant la liste j'aurais toujours les doublons dans le xml ?
    Ah j'avais pas fait gaffe aux doublons... tu as dû déclarer comme publics les champs qui contiennent les valeurs des propriétés, donc ils sont sérialisés aussi. Par contre dans le code que tu as posté plus haut, ils étaient privés... tu as modifié entre temps ?

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Me revoila toujours sur le test de la sérialisation d''une liste qui contient un élément avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim lst As List(Of operation)
     
            lst = New List(Of operation)
     
            lst.Add(New operation("23/11/2009", "cheque", "Gaz Oil", "100", "0", "900"))
     
            tope.DataSource = lst
     
            Dim xs As XmlSerializer
            xs = New XmlSerializer(GetType(operation))
     
            Using sw As New StreamWriter("ope.xml")
                xs.Serialize(sw, lst)
            End Using
    j'obtiens :
    L'exception InvalidoperatioException n'a pas été géré
    "Erreur lors de la génération du XML"
    Surligné en jaune :
    *Ah j'avais pas vu que tu avais répondu pour les doublons, j'y ai remédié en supprimant les Geteur et les Seteur, c'est pas une solution ?

  18. #18
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Quand tu crées le XmlSerializer, il faut le créer avec le type de la liste (List(Of operation)), et non avec le type de l'opération :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xs = New XmlSerializer(GetType(List(Of operation)))

  19. #19
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par realtux Voir le message
    *Ah j'avais pas vu que tu avais répondu pour les doublons, j'y ai remédié en supprimant les Geteur et les Seteur, c'est pas une solution ?
    Si... mais une mauvaise
    C'est généralement considéré comme une mauvaise pratique d'avoir des champs publics. Déclare plutôt les champs en privé, et mets des propriétés (getter/setter) pour y accéder

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 93
    Points : 30
    Points
    30
    Par défaut
    Je sais que c'est considéré comme une mauvaise pratique en objet je suis en plein dedans en cour mais dans la doc de la sérialisation j'ai vu qu'il fallait les mettre en public.

    sinon en modifiant le code comme tu me la écris, j'ai maintenant cette erreur :

    Une erreur s'est produite lors de la réflexion du type 'System.Collections.Generic.List`1[test.fenetre1.operation]'.
    Je n'ai toujours pas remis les geteur et seteur avant ce test c'est peut être liée ou rien à voir ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 4 1234 DernièreDernière

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/09/2009, 07h15
  2. sauvegarder le contenu d'un dataGridView dans un fichier Xml
    Par gregcat dans le forum Windows Forms
    Réponses: 1
    Dernier message: 05/02/2008, 18h12
  3. DatagridView et fichier XML
    Par will2taz dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/06/2007, 09h59
  4. Réponses: 2
    Dernier message: 28/09/2006, 09h48
  5. [C#2.0]DatagridView + Chargement fichier XML
    Par chnew dans le forum Windows Forms
    Réponses: 2
    Dernier message: 10/04/2006, 12h35

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