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 :

Probleme Transfer de données d'un datagridview vers un autre


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 36
    Par défaut Probleme Transfer de données d'un datagridview vers un autre
    Bonjour tout le monde,

    j'essaye de remplir un formulaire(facturedatagridview) de deux facons differentes:

    1) en saisissant directement les données sur le datagridview,tout se passe
    bien, les données sont sauvegardées sur la table.


    2)en cliquant sur la cellule 'code article' d'un deuxiéme datagridview: articledatagridview qui me raméne dans ma facture(facturedagridview) le libellé et le prix.

    mais dés que je clique sur la cellule quantité pour entrer la donnée,tout les données s'effacent meme si je sauvegarde avant.


    Qulqu'un pourrait me dire pourquoi
    Merci d'avance de votre aide

    Voici mon bout de 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
    private void articlesDataGridView_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
            {
                string Code = articlesDataGridView.Rows[e.RowIndex].Cells[0].Value.ToString();
                string Libelle = articlesDataGridView.Rows[e.RowIndex].Cells[1].Value.ToString();
                string prix = articlesDataGridView.Rows[e.RowIndex].Cells[2].Value.ToString();
     
                factureDataGridView.Rows[e.RowIndex].Cells[1].Value = Code;
                factureDataGridView.Rows[e.RowIndex].Cells[2].Value = Libelle;
                factureDataGridView.Rows[e.RowIndex].Cells[4].Value = prix;
     
                this.Validate();
                this.factureBindingSource.EndEdit();
                this.tableAdapterManager.UpdateAll(this.essaiDataSet);
            }

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 337
    Par défaut
    Je te déconseilles vivement de travailler sur les composant graphique pour affecter des valeurs, utilises plutôt les composants données (datarow) de plus je penses qu'il y a un soucis avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    factureDataGridView.Rows[e.RowIndex].Cells[1].Value = Code;
                factureDataGridView.Rows[e.RowIndex].Cells[2].Value = Libelle;
                factureDataGridView.Rows[e.RowIndex].Cells[4].Value = prix;
    En effet tu utilise le rowIndex de la cellule cliqué sur le datagridarticles pour remplir le datagrid facture.
    Le tout est de savoir sur quelle facture tu souhaites faire les modifications?
    Si c'est la facture courante (sur la quelle tu est positionné) tu peux utiliser this.factureBindingSource.Current.

    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
     
    private void articlesDataGridView_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
            {
    if(e.RowIndex != -1 )
    {
    DataRow maRowArticle = ((DataRowView)articlesDataGridView.Rows[e.RowIndex].DataBoundItem).Row;
    //Si une facture est sélectionnée .... 
    if( this.factureBindingSource.Current != null)
    {
    DataRow maRowFacture = ((DataRowView)this.factureBindingSource.Current ).Row;
    maRowFacture["Code"] = maRowArticle["Code"];
    maRowFacture["Libelle"] = maRowArticle["Libelle"];
    maRowFacture["prix"] = maRowArticle["prix"];
    maRowFacture.EndEdit();
    this.Validate();
    this.factureBindingSource.EndEdit();
    this.tableAdapterManager.UpdateAll(this.essaiDataSet);
    }       
    }  
            }

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/11/2012, 20h50
  2. [MySQL] Probleme pour envoyer données d'un formulaire vers MYSQL
    Par lol88 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 16/01/2010, 16h45
  3. transferer les donnes d'une BDD vers un fichier XML?
    Par bylka dans le forum XQUERY/SGBD
    Réponses: 6
    Dernier message: 12/11/2007, 09h11
  4. Transferer des données d'une requete vers une table
    Par Lotfus dans le forum Bases de données
    Réponses: 3
    Dernier message: 22/07/2007, 09h03
  5. Transferer des données d'un table vers une autre
    Par pooi1 dans le forum VBA Access
    Réponses: 4
    Dernier message: 31/05/2007, 01h05

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