[C#] Combobox & membre DataSource

scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 26 juil. 2006 à 18:42
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017 - 27 juil. 2006 à 11:52
glop glop,

je viens de remplir ma combo comme ceci :

ArrayList Categories = localDb.GetCategories ();
m_comboBoxCategory.DataSource = Categories;
m_comboBoxCategory.SelectedIndex = m_comboBoxCategory.FindString ("Imprimantes");

Maintenant, sur un clic, j'ai besoin de la re-remplir :
ArrayList Models = MafonctionDe Remplissage ()
m_comboBoxCategory.DataSource = Models;

Models est non vide mais DataSource devient vide.
Une idée ?

11 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
27 juil. 2006 à 09:09
mouaip... en général, je repasse par null avant de changer le binding...

donc :
m_comboBoxCategory.DataSource = null;
m_comboBoxCategory.DataSource = Models;

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
27 juil. 2006 à 09:52
bah ca marche pô :(
ma arraylist contient 1 element
et l'assignatin ne change rien
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
27 juil. 2006 à 09:56
quand tu dis que ca ne marche pas... la combo est vide ?

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
27 juil. 2006 à 10:40
lol... je viens de relire le message d'origine...

l'arraylist est déclarée dans la delegate _Click ou est-elle globale ?

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
romagny13 Messages postés 687 Date d'inscription lundi 10 janvier 2005 Statut Membre Dernière intervention 27 août 2014 3
27 juil. 2006 à 10:43
Salut,
si vraiment il faut
au lieu de lier directement ta combo a la datasource

tu fais deux procedures 
chacune disposant d'une boucle ajoutant chaque element a ta combobox et qui vide la combo dans un premier temps:

- 1 méthode pour lister les categories
- 1 methode pour lister les models

sinon c'est bizarre ca marche pas en faisant cela ?

comboBox1.DataSource = ds.DATABLE;
comboBox1.DisplayMember =

"NOM_COLONNE";

(sans mm ajouter m_comboBoxCategory.DataSource = null;)

++
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
27 juil. 2006 à 11:08
L'arrayList est déclarée en local tout comme les 2 assignations.
Et pour vérifier que le problème ne viennent pas du GC, j'ai tracé au débuggueur et suis donc resté dans ma fonction locale.

----------------------------
C++ forever
C# amateur
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
27 juil. 2006 à 11:11
ok...

je sais que ca ne répond pas à ton problème... mais si tu ajoutes une seconde combobox et que tu lui assignes l'arraylist en datasource... est-ce que ca marche ?

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
27 juil. 2006 à 11:23
ahah, pas con l'idée.
Et bien oui avec une autre combo ca marche.
donc en résumé vos 2 méthodes sont bonnes mais pas dans ma combo....
En fait c'est l'affection de ma DataSource qui reste vierge malgré le fait que les objets à affecter soit non nuls
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
27 juil. 2006 à 11:31
Tiens maintenant je me prend une exception (sur ma combo qui marche pas) :
Additional information: DataBinding complexe accepte IList ou IListSource comme source de données

donc visiblement le binding n'est pas bon dans cet objet

----------------------------
C++ forever
C# amateur
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
27 juil. 2006 à 11:37
???

C'est bien une arraylist que tu bind ?

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
scoubidou944 Messages postés 714 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 19 janvier 2017
27 juil. 2006 à 11:52
Pour le cas précédent, autant pour moi, erreur de copier/coller.
Au final, j'ai crée une combo à côté , viré l'ancienne, renommé la nouvelle avec le nom de l'ancienne et ca passe.
vive la bidouille.

----------------------------
C++ forever
C# amateur
0
Rejoignez-nous