Bonjour, j'ai crée un code pour que lorsque l'utilisateur double clique sur la cellule , il puisse l'éditer comme un tableau excel et que cela se change en base. Cependant j'ai une erreur que je ne comprend pas :



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
 
/// Retire le readonly est stock dans une variable la valeur actuelle de cette celulle
private void Seals_DataGridView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
    Seals_DataGridView.CurrentCell.ReadOnly = false;
    varTempForEditCell = Seals_DataGridView.CurrentCell.Value.ToString();
}
 
/// Vérifie si le contenu actuel lors de la fin de l'édition est le même que celui stocker dans la variable , sinon il appelle une fonction qui fait un update dans la base
private void Seals_DataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
 
    if ( Seals_DataGridView.CurrentCell.Value.ToString() == varTempForEditCell )
    {
       MessageBox.Show("Mêmme Valeur");
    }
    else
    {
        if (editingRequests.UpdateFeature(Seals_DataGridView.CurrentCell.OwningColumn.Name.ToString(), varTempForEditCell, Seals_DataGridView.CurrentRow.Cells["device_id"].Value.ToString()) == true) /// Les valeurs récupérées ici sont : Nom de la colonne de la cellule , nouvelle valeur, et id du contenu de la celulle ( que je récupère dans une autre colonne ) 
        {
            SetUp_Interface(sealId.ToString()); /// Rafraîchis la dataGridView
 
        }
        else
        {
            MessageBox.Show("Valeur différente mais une erreur s'est produite lors de la modification en base de données");
        }
 
 
    }
 
    varTempForEditCell = "";
    Seals_DataGridView.CurrentCell.ReadOnly = true;
}
Et j'ai comme message d'erreur :
L'opération n'est pas valide, car elle se traduit par un appel réentrant à la fonction SetCurrentCellAddressCore
Merci du coup de main