Salut la famille! J'ai un petit problème, j'suis entrain de réaliser une application en couche avec C#, alors dans ma couche Accès au données j'ai un bug qui apparaît quand je lance l'application sous Visual Studio 2013, le message dit ceci : "Une exception non gérée du type 'System.StackOverflowException' s'est produite dans mscorlib.dll" et cette exception fait référence à mon bindingsource à sa déclaration que voici BindingSource bindingsource = new BindingSource();!
Je souhaite avoir une aide sur cette exception!
Voici le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
private DataSet dataset = new DataSet();
DataTable datatable = new DataTable();
BindingSource bindingsource = new BindingSource(); //L'exception fait référence à cette ligne de code
//Et voici la méthode que j'ai implémentée pour

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
46
47
48
49
50
51
public void Recherche(string NomRecherche, BindingNavigator Bindingnavigator, TextBox TextboxId, TextBox TextboxLibellé, TextBox TextboxQuantité, TextBox DateFabrication, TextBox DateExpiration, TextBox TextboxPaysOrigine, TextBox DateArrivée)
        {
            try
            {
            ChaineDeConnexion = "Data Source=ARCHIPPEARAZA\\ARCHIPPEARAZA;Initial Catalog=BD_Produiti;Integrated Security=True";
 
            ObjetConnexion.ConnectionString = ChaineDeConnexion;
            ObjetConnexion.Open();                
 
                string sql = "select * from T_PRODUIT where Libelle like '" + NomRecherche + "%'";
                dataset = AccessToDB.Selection(sql);
                datatable = dataset.Tables[0];
                bindingsource.DataSource = datatable;
                Bindingnavigator.BindingSource = bindingsource;
 
                TextboxId.DataBindings.Clear();
                TextboxId.DataBindings.Add("Text", bindingsource, "Code_Produit");
 
                TextboxLibellé.DataBindings.Clear();
                TextboxLibellé.DataBindings.Add("Text", bindingsource, "Libelle");
 
                TextboxQuantité.DataBindings.Clear();
                TextboxQuantité.DataBindings.Add("Text", bindingsource, "Quantite");
 
                DateFabrication.DataBindings.Clear();
                DateFabrication.DataBindings.Add("Text", bindingsource, "Date_Fabrication");
 
                DateExpiration.DataBindings.Clear();
                DateExpiration.DataBindings.Add("Text", bindingsource, "Date_Expiration");
 
                TextboxPaysOrigine.DataBindings.Clear();
                TextboxPaysOrigine.DataBindings.Add("Text", bindingsource, "Pays_Origine");
 
                DateArrivée.DataBindings.Clear();
                DateArrivée.DataBindings.Add("Text", bindingsource, "Date_Arrive");
 
                if (datatable.Rows.Count == 0)
                {
                    MessageBox.Show("Le produit \"" + NomRecherche + "\" est introuvable!",
                        "Client non trouvé",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Information);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Code erreur : " + ex.Message, "Erreur",
                    MessageBoxButtons.OK,
                    MessageBoxIcon.Error);
            }
        }