Combobox databinding pb d'affichage

Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
- - Dernière réponse : Arthenius
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
- 8 déc. 2008 à 15:54
Bonjour a tous,

Voila mon probleme.
j'ai un bug sur combobox qui apparait de temps en temps.cette combobox est binder à un champ d'une datatable

Cbo_MAGNUM.DataBindings.Clear();
Cbo_MAGNUM.DataBindings.Add("SelectedValue", ds.T_CMDCLT, "MAGNUM");

j'ai un formulaire sur lequel, il y a une liste qui me permet de naviguer entre les différent élément, une fiche me permet la saisie le tout ce fait via navigation de dataset et databinding pour le formulaire de saisie

Mon souci c'est que lorsque je m'amuse a cliquer n'importe comment dans la liste, revenir en fiche, annuler mes modifs recliquer et pour finir faire une nouvelle fiche.
Ma combobox s'initalise a priori a une valeur (la premiere de la liste), alors que dans ma méthode nouveau j'initialise bien le champ a dbnull.value pour le champ MAGNUM.

DataRow row = ds.T_CMDCLT.NewRow();
....
row["MAGNUM"] = DBNull.Value;
....
ds.T_CMDCLT.Rows.Add(row);
                          

En verifiant il semble que la valeur soit bien null et il semble que ce ne soit q'un pb d'affichage.

Ma question comment reforcer le binding sur mon dataset et ca valeur null de MAGNUM et ou raffraichir l'affichage de la combo ??

j'ai essayer le invalidate, le Currencymanager.EndCurrentEdit apres avoir inserer ma nouvelle ligne dans mon dataset, le cbo.refresh, cbo.selectedindex = -1...bref un peu tout mais j'arrive a chaque fois à refaire apparaitre mon premier enregistrement :( (pas tjs tout de suite mais en bidouillant ca reviens...)

help :)

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
Afficher la suite 

1 réponse

Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
J'ai oublier de préciser que ma combo etait rempli comme cela

 ds.T_MAGAZINE.Rows.Clear();
Da_T_MAGAZINE.Fill(ds.T_MAGAZINE);
ds.T_MAGAZINE.DefaultView.Sort = "MAGLIB";
Cbo_MAGNUM.DataSource = ds.T_MAGAZINE;
Cbo_MAGNUM.DisplayMember = "MAGLIB";
Cbo_MAGNUM.ValueMember = "MAGNUM";

<hr />Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius