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

 .NET Discussion :

Initialisation de DatagridView après clique d'un bouton


Sujet :

.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2017
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

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

    Informations forums :
    Inscription : Janvier 2017
    Messages : 63
    Points : 28
    Points
    28
    Par défaut Initialisation de DatagridView après clique d'un bouton
    Bonjour,

    je souhaite une aide concernant l'initialisation de dataGridView1.
    Quand je clique sur le bouton je veux que le dataGridView1 s'initialiser pour me permettre d'ajouter plus tard d'autre information.
    J'ai essayé ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.dataGridView1.Rows.Clear();
                this.dataGridView1.Columns.Clear();
                this.dataGridView1.Refresh();
    Mais cela ne fonctionne pas, car si j'ajoute un autre article dans lle datagridview il prend en considération les anciennes valeurs.
    Pourriez vous m'aider

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,

    Comme tous ceux qui sont passé sur ton post, je n'ai aucune réponse à te donner.
    Pourquoi ?
    Tu ne fournis qu'un code qui nous fait comprendre, que tu lis pas les doc des méthodes que tu utilises, explications =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
       this.dataGridView1.Rows.Clear(); // supprime les lignes de ta datagridview
       this.dataGridView1.Columns.Clear(); // supprime les colonnes de ta datagridview
       this.dataGridView1.Refresh(); // rafraichit l'affichage de la dataGridview, méthode hérité de Control, n'aura donc aucun effet sur les données.
       // Donc en effet ici j'ai une datagridview vide ...
    Ce bout de code n'a donc aucun rapport avec le problème que tu exposes. Ce qui pourrait nous être utile c'est le bout de code où tu remplis ta datagridview.
    De plus comment est géré la mise à jour de tes données ? Est ce que tu peux les mettre à jour ou est ce que tu ne fais qu'un select pour le moment ?
    ... bref donne nous du contexte, EntityFramework, DataSet, databinding, object ? dis nous ce tu as déjà fais, ce qui fonctionne et ce qui ne fonctionne pas ou que tu ne conceptualise pas.

    Mais là, vue les infos et le peu de background que tu sembles avoir on va avancer tout doucement, et il n'y a pas de réponse toute faite en un post genre : "Tiens copie-colle ça, ca va passer !" surtout vue le peu d'info que tu nous donnes.

    De plus hésite pas à tagger ton post [Débutant] comme préconisé dans les règles du forum, ça mange pas de pain !

    Désolé pour ce laïus, ne m'en veut pas c'est pour te faire avancer quand même, et comprendre, en partie, pourquoi nous aurons du mal à t'aider si tu ne nous aide pas en premier

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2017
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

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

    Informations forums :
    Inscription : Janvier 2017
    Messages : 63
    Points : 28
    Points
    28
    Par défaut
    Comme convenu voila le code de remplissage de datagridview
    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
    if (isValided())
                {
                    bool hasSameProduitSelectedAgain = false;
                    foreach (DataGridViewRow row in dataGridView1.Rows)
                    {
                        if(Convert.ToInt16(row.Cells["ItemId"].Value) == Convert.ToInt16(cB_Article.SelectedValue))
                        {
                            row.Cells["Quantité"].Value = Convert.ToInt16(row.Cells["Quantité"].Value) + Convert.ToInt16(tB_Quantité.Text);
                            row.Cells["TotalPrix"].Value = Convert.ToInt16(row.Cells["Quantité"].Value) * Convert.ToDecimal(row.Cells["PrixUnitaire"].Value);
                            hasSameProduitSelectedAgain = true;
                        }
                    }
     
                    if (hasSameProduitSelectedAgain == false)
                    {
                        ClassTest3 ct = new ClassTest3()
                        {
                            ItemId = Convert.ToInt16(cB_Article.SelectedValue),
                            //Client = tB_Client.Text,
                            Article = cB_Article.Text,
                            Quantité = Convert.ToInt16(tB_Quantité.Text.Trim()),
                            PrixUnitaire = Convert.ToDecimal(tB_PrixUnitaire.Text.Trim()),
                            TotalPrix = Convert.ToInt16(tB_Quantité.Text.Trim()) * Convert.ToDecimal(tB_PrixUnitaire.Text.Trim()),
     
                        };
     
                        achat.Add(ct);
                        dataGridView1.DataSource = null;
                        dataGridView1.DataSource = achat;
                    }
     
     
                    decimal montantTotal = achat.Sum(x => x.TotalPrix);//Formule de calcule de Total
                    tB_MontantTotal.Text = montantTotal.ToString();
     
                    decimal tva = (20 * montantTotal) / 100;
                    tB_TVA.Text = tva.ToString(".00");
     
                    decimal TotalàPayer = tva + montantTotal;
                    tB_Totalàpayer.Text = TotalàPayer.ToString();
     
                    cB_Article.SelectedIndex = -1;
                    tB_Quantité.Clear();
                    tB_PrixUnitaire.Clear();
                }
    et le code du button est celui ci
    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
    private void btn_Espèce_Click(object sender, EventArgs e)
            {
                ResteEnEspece();
                decimal value = Convert.ToDecimal(tB_Rendu.Text);
                if (value >= 0)
                {
                    SaveOrder((int)Paymenttypes.Espèce);
                }
                else
                {
                    MessageBox.Show("Il vous manque: " + tB_Rendu.Text,"Erreur",MessageBoxButtons.OK,MessageBoxIcon.Error);
                    tB_Rendu.Clear();
                    tB_Reste.Clear();
                    tB_Reste.BackColor = Color.White;
                    tB_Reste.Focus();
                }
                //this.dataGridView1.Rows.Clear();
                //this.dataGridView1.Columns.Clear();
                //dataGridView1.Refresh();
            }
     
            private void ResteEnEspece()
            {
                try
                {
                    tB_Rendu.Text = (Convert.ToDecimal(tB_Reste.Text) - Convert.ToDecimal(tB_Totalàpayer.Text)).ToString();
                    decimal value = Convert.ToDecimal(tB_Rendu.Text);
                    if (value >= 0)
                    {
                        tB_Rendu.BackColor = Color.Blue;
                    }
                    else
                    {
                        tB_Rendu.BackColor = Color.Orange;
                    }
                }
                catch(Exception ex)
                {
     
                }            
            }

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/04/2015, 09h32
  2. [novice,C#,asp] Envoi données au WebS. apres clique d'un bouton
    Par MissLaLou dans le forum Services Web
    Réponses: 2
    Dernier message: 03/05/2007, 10h26
  3. Réponses: 1
    Dernier message: 22/04/2007, 14h50
  4. [MySQL] Traitement après clique sur bouton submit
    Par H-bil dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 24/05/2006, 13h29
  5. Texte qui s'affiche aprés le clique sur un bouton radio
    Par Rekiem dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/04/2006, 17h32

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