Bonjour!
je travail avec une base de donnée SQL Server.
et j'ai une table Mode_Règlement, à chaque code_règlement correspond un libellé_règlement.
je travail avec un combobox et un textbox.
j'ai réussi à faire correspondre un code règlement à un libbellé règlement via une methode que je trouve trop longue (créer une classe , puis des methodes bref...).
Alors j'ai decider d'utiliser SortedDictionary.
je vous présente mon code et vous montre où sa coince.
et c'est ici où il y a une erreur
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 private SortedDictionary<string, string> reglement = new SortedDictionary<string, string>(); private void Mode_Règlement(string vsoc, string vetb) { try { string selectquery = "SELECT [Code Société],[Code Etablissement],[Code Mode Réglement],[Libellé Mode Réglement]FROM dbo.[Modes Règlements]" + "WHERE [Code Société]='" + button4.Text.Trim() + "' AND [Code Etablissement]='" + button5.Text.Trim() + "'" + "ORDER BY [Code Mode Réglement]"; using (SqlConnection conn = new SqlConnection(Variab_Meth_Glob.Chaine_SQLServers())) { //Ouvre la cnnection conn.Open(); //execute vos instructions SqlCommand cmd = new SqlCommand(selectquery, conn); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { // Ajoute le couple code et libellé dans le dictionnaire reglement.Add(reader["Code Mode Réglement"].ToString(), reader["Libellé Mode Réglement"].ToString()); } // Ensuite on remplit le combo box avec les clés : foreach (string k in reglement.Keys) cb_Mode.Items.Add(k); // Enfin on va mettre en place l'évènement SelectedValueChanged sur le combobox cb_Mode.SelectedValueChanged +=new EventHandler(cb_Mode_SelectedValueChanged); //ferme la connection reader.Close(); conn.Close(); } } catch (Exception e) { MessageBox.Show("Erreur :" + e.ToString()); } }
La référence d'objet n'est pas définies à une instance d'objetMerci pour l'aide.
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 private void cb_Mode_SelectedValueChanged(object sender, EventArgs e) { try { tb_Libellé_Mode.Text = reglement[cb_Mode.SelectedValue.ToString()]; } catch (Exception s) { MessageBox.Show("Erreur :" + s.ToString()); } }
Partager