bonsoir

j'ai une petite question :

j'ai une datatable pour laquelle si la valeur d'une cellule de colonne "toto" est égale à "999" j'efface la ligne

mais ce qui est étrange c'est que je regarde le datable.rows.count avant et après mon delete et je trouve la même valeur pour le count

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
        private void TriCommande(DataGridView datagridview)
        {
            try
            {
                String valueCell = "";
                DataTable table = new DataTable();
                table = (DataTable)datagridview.DataSource;
 
                Console.WriteLine(table.Rows.Count.ToString());
 
                foreach (DataRow row in table.Rows)
                {
                    valueCell = row["toto"].ToString();
                    if (valueCell == "999")
                    {
                        row.Delete();
                    }
                }
 
                Console.WriteLine(table.Rows.Count.ToString());
 
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
 
        }
pourquoi ?

(pour info l'affichage de ma datatable dans un datagridview est correct)

par contre ensuite je suis obligé de gérer l'événement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(row.RowState != DataRowState.Deleted)
pour ne pas avoir le message d'erreur suivant :
Impossible d'accéder via la ligne aux informations de la ligne supprimée
comment faire pour que quand je supprime une ligne de ma datatable le count tienne compte de mes delete ?

merci

@++

KaloOopS