Combobox_selectedIndexChanged et Form_shown [Résolu]

Messages postés
2
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
18 juillet 2008
- - Dernière réponse : cs_Scooper
Messages postés
71
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
12 septembre 2013
- 18 juil. 2008 à 21:39
Bonjour,


j'ai une fenêtre qui contient (entre autres choses une combobox) et mon code ressemble à ça :


private void maFonction()

{//code}


public void Frm_Shown()

{

//je remplis ma combobox avec un datasource

// j'affiche les différentes informations

}


private void maCbo_SelectedIndexChanged(..)

{

maFonction();

}


le problème est que systématiquement, au lancement de l'application,
j'ai le message d'erreur suivant "la référence d'objet n'est pas
définie à une instance d'objet". je pense avoir compris que c'est lié
au fait que ma fonction est appelée au changement d'index alors que la
combo n'est pas encore remplie ... et là, je ne vois pas trop quoi
faire (et pourtant google &co sont mes meilleurs amis) ..

euh, dois-je préciser que je suis débutante ...

merci !
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
8
Date d'inscription
mercredi 3 novembre 2004
Statut
Membre
Dernière intervention
18 juillet 2008
3
Merci
Salut,

Si ton problème vient bien du fait que "la fonction est appelée au changement d'index alors que la combo n'est pas encore remplie",  peut-être que tu devrais tester que le chargement est fini. Avec une variable comme ceci :

private void maFonction()
{//code}

Boolean ChargementFini = false;
public void Frm_Shown()
{
//je remplis ma combobox avec un datasource
// j'affiche les différentes informations
ChargementFini = true;
}

private void maCbo_SelectedIndexChanged(..)
{
    if (ChargementFini)
   {
        maFonction();
    }
}

Ca devrait corriger le problème, je pense, si  le problème vient de là.
++

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Commenter la réponse de benzebuth666
Messages postés
2
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
18 juillet 2008
0
Merci
merci merci merci !

c'était bête comme chou !
Commenter la réponse de makaye
Messages postés
71
Date d'inscription
jeudi 2 octobre 2003
Statut
Membre
Dernière intervention
12 septembre 2013
0
Merci
Bonsoir,

en fait le problème vient du fait que lorsque la combobox se rempli, le 1er item est séléctionner et donc déclenche l'évenement OnSelectedIndexChanged.

La méthode que j'utilise pour ne pas avoir d'erreur est :

private void maCbo_SelectedIndexChanged(..)
{
   if(maCbo.SelectedItem == null) return;

  mafonction();
  ...
  ...
}
Commenter la réponse de cs_Scooper