Listbox qui plante

Signaler
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009
-
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009
-
Bonjour,j'ai un probléme avec une listbox,lorsque je clique dans la listbox,en dehors du ou des éléments de celle-ci,ça plante,je ne sais pas du tout à quoi cela est dû,merci de m'aider.

11 réponses

Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
Vu le peu d'infos que tu donne, y'a effectivement de grandes chance qu'on en sache plus que toi...
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

Bon,je vais essayer de développer un peu :)
Dans mon programme,je choisis le chemin de mes répertoire,ensuite ceux-ci s'affichent dans un listbox,ensute j'en choisi un puis cela affiche la liste des fichiers dans un autre listbox,et dans celui là quand je clique dans une partie vide,c'est à dire là où il n'y a pas de fichier,cela plante.et ça me met comme erreur "La référence d'objet n'est pas définie à une instance d'un objet.".Merci de m'aider
Messages postés
860
Date d'inscription
jeudi 4 mars 2004
Statut
Membre
Dernière intervention
19 août 2014
22
Bonjour,

Peux-tu nous insérer un peu de code STP, cela nous mettra surement sur la voie

Merci,

Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

private void listView1_SelectedIndexChanged_1(object sender, EventArgs e)
        {
            try
            {
                if (listView1.SelectedItems.Count > 0 && listView1.SelectedItems.Count < 2)
                {
                    listepat2.Items.Clear();
                    string filename1;
                    string result1;
                    String destination1 = listView1.SelectedItems[0].Text;
                    String nomfolder1 = parentDirectory + "\" + destination1;
                    string[] ajoutlistpat1 = Directory.GetFiles(nomfolder1);
                    for (int i = 0; i < ajoutlistpat1.Length; i++)
                    {
                        filename1 = ajoutlistpat1[i];
                        result1 = Path.GetFileName(filename1);
                        if (result1 != "folderID.txt")
                        {
                            listepat2.Items.Add(result1);
                        }

                    }


private void listepat2_SelectedIndexChanged_1(object sender, EventArgs e)
        {
            destination1 = listView1.SelectedItems[0].Text;
            string myPath4 = parentDirectory + "\" + destination1;
            string Folder1 = listepat2.SelectedItem.ToString();
            string sligne1 = "";
            string myPath5 = myPath4 + "\" + Folder1;


C'est au niveau de listpat2 le soucis.
Chose étonnante,c'est que si je choisis dans mon listpat2 un élement et qu'ensuite seulement je clique dans une zone vide mon listpat2,cela ne plante pas.Cela plante donc seulement quand je clique sur une zone vide de listpat2 alors que je n'ai pas encore rien selectionner dans celui-ci.
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

Vous ne comprenez pas mon programme?
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

up
Messages postés
860
Date d'inscription
jeudi 4 mars 2004
Statut
Membre
Dernière intervention
19 août 2014
22
Désolé, pour ma part, je n'ai pas trop le temps de copier/coller ton code pour tester.
Mais vérifie la valeur de "listepat2.SelectedItem". N'est-elle pas nulle ?

En mode pas-à-pas, tu devrais trouver facilement la solution.

Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

J'ai fait pas à pas,et en effet la valeur de listepat2.selectedItem est null,mais je ne vois pas comment résoudre cela
Merci
Messages postés
860
Date d'inscription
jeudi 4 mars 2004
Statut
Membre
Dernière intervention
19 août 2014
22
Cela dépend complètement de tes spécifications.
A toi de gérer cette erreur:

Par exemple:
if(listepat2.selectedItem == null)
{
MessageBox.Show("Veuillez sélectionner un répertoire !");
return;
}

Mais là, c'est toi le maître du code et c'est toi qui décide de ce qui doit se passer.

Bon dev,

Billou_13
Bask En Force

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

Mais mon problème ne vient pas de là finalement,il vient de cette ligne "string Folder1 = listepat2.SelectedItem.ToString();" avec cette erreur "La référence d'objet n'est pas définie à une instance d'un objet." et apparemment ça serait l'exception NullReferenceexception qui n'aurai pas été géré.
Messages postés
46
Date d'inscription
vendredi 23 janvier 2009
Statut
Membre
Dernière intervention
25 août 2009

Bon j'ai résolu mon probléme,c'est bon,merci à tous pour votre aide