Bonjour,


En C# je souhaite supprimer une ligne de mon DataGridView comme 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
 
   private void toolStripButtonCancelButton_Click(object sender, EventArgs e)
        {
            // tble_DataGridView
            string numéro_ligne = String.Format("{0}", tble_DataGridView.CurrentCell.RowIndex + 1);
 
            int num;
            if (int.TryParse(numéro_ligne, out num))
            {
                tble_DataGridView.Rows.RemoveAt(num);
            }
 
 
        }
Dans cette exemple la sélection de la cellule m'indique que c'est la ligne 280 (279 + 1), mais ça ne passa pas....j'ai pensé à convertir le (string numéro_ligne) en Int mais ça ne fonctionne pas....

J'obtiens le message suivant :
System.ArgumentOutOfRangeException*:
'L'index était hors limites. Il ne doit pas être négatif et doit être inférieur à la taille de la collection.
Nom du paramètre*: index'

J'ai essayé comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8

   if (int.TryParse(numéro_ligne, out num))
            {
                DataGridViewRow row = tble_bdsDataGridView.SelectedRows[numéro_ligne];  // VisualStudio me dit conversion impossible de string en int ???????

                tble_bdsDataGridView.Rows.Remove(row);
            }
Et même comme ceci de toute façon ça ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
 
 DataGridViewRow row = tble_bdsDataGridView.SelectedRows[280];
 
                tble_bdsDataGridView.Rows.Remove(row);
Qui peut m'aider sur cette ligne de code ?

Merci à vous,

Bruno