Bonjour les developpez.net,
sur mon projet de fin d'étude, j'ai travaillé avec BindingManagerBase.
j'ai essayé de faire un double travail pour le bouton Ajouter (btnAjouter) ajouter et enregistrer, lorsque je clique sur ajouter ça va vider les champs et changer
ajouter à enregistrer.
Alors le problème est quand je clique sur ajouter tout va bien, je saisie, et quand je fais enregistrer il me donne l'erreur "Impossible d'effectuer un cast d'un objet de DBNull en d'autres types" au niveau de la ligne 4 ( int id = Convert.ToInt32(dt.Rows[dt.Rows.Count - 1][0]) + 1; )
s'il vous plait aidez moi j'en ai besoin pour mon projet fin d'étude et merci d'avance.
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 private void btnAjouter_Click(object sender, EventArgs e) { if (state == "Ajouter") { bmb.AddNew(); // vider les textbox et préparer un enregistrement vide dans DataTable pour le remplir et sauvegarder dans un datagridview. int id = Convert.ToInt32(dt.Rows[dt.Rows.Count - 1][0]) + 1; //me pointer sur le nouveau champ crée n+1 pour le remplir (datagridview). txtID.Text = id.ToString(); // champ qui s'incrémente automatiquement (clé primaire). txtDes.Focus(); btnAjouter.Text = "Enregistrer"; } else { bmb.EndCurrentEdit(); cmdb = new SqlCommandBuilder(da); da.Update(dt); btnAjouter.Text = "Ajouter"; }
Partager