Recupere l'index d'un item

Tendry - 10 avril 2018 à 21:50
vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
- 15 avril 2018 à 13:26
Bonjour,
Je suis entraint de develloppé une petite application pour tache de recuperer la liste des lecteurs branché sur le pc.
Mon problem sont les suivant:
J'ai un listbox charger par le driveinfo
Sur mon ordi j'ai:
C:\partition => index:0
D:\partition => index:1
E:\(lecteur sd inactif) => index:3
F:\DvdRom => index:4
G:\Usb branché => index 5

Dans ma listbox quand j'elimine les inactifs et le dvd le G:\ prend l'index: 3
Pour recuperer les infos du disque selectioné

Mondrive[listitem.selectedIndex].name
Mondrive[listitem.selectedIndex].driveformat

Sauf que l'index du du list G:\ ne corespond plus a cel du mondrive[]

Est il realisable d'accedé a Mondrive[] via ses valeurs par exemple

Par exemple:
Mondrive[indexof(Mondrive ou le valeur = listitem.selectedItem)

Merci de votre aide.

1 réponse

vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
151
Modifié le 11 avril 2018 à 15:03
bonjour !
Si tu montrais le code que tu as écrit !
Ne serais-tu pas en train de confondre disque physique et partition logique ?
Pourquoi supprimes-tu les inactifs ?
Dans ce cas mieux vaut afficher uniquement les partitions actives qui ne sont pas sur disque DVD?

Regarde les propriétés DriveType et Ready de la classe DriveInfo pour filtrer les partitions que tu désires

0
tendry12
Messages postés
11
Date d'inscription
dimanche 18 janvier 2015
Statut
Membre
Dernière intervention
22 avril 2018

14 avril 2018 à 08:47
Bonjour,
Je vien de trouver un solution a mon probleme

Foreach(driveInfo d in allDrive)
{

If(d.IsReadu ==true)
{
//ajouter un item a ma listebox
ListeDrive.items.add(d.Name);

}
Else
{
ListeDrive.items.add(d.name + "pas de disque") ;

}
}


Et empecher la selection du disque invalide avec

If( alldrive[cl.selectedIndex].isReady == false)
{
MessageBox.show(" le disque est vide");
//metre le bouton d'envoye a disable"
Bt-format.enabled = false;
}


Mais je cherche a rendre les items inactif invible
Mais je ne sais pas comment fair merci.
0
vb95 > tendry12
Messages postés
11
Date d'inscription
dimanche 18 janvier 2015
Statut
Membre
Dernière intervention
22 avril 2018

Modifié le 14 avril 2018 à 15:47
bonjour
Pourquoi affiches-tu les partitions qui ne sont pas prêtes ?

Foreach(driveInfo d in allDrive)
{
   If(d.IsReady ==true)
   {
       //ajouter un item a ma listbox
       ListeDrive.items.add(d.Name);
    }
}


IsReady et non IsReadu
0
tendry12
Messages postés
11
Date d'inscription
dimanche 18 janvier 2015
Statut
Membre
Dernière intervention
22 avril 2018

14 avril 2018 à 17:38
Une faute de frape. Desoler
0
vb95
Messages postés
2630
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
19 mai 2022
151
15 avril 2018 à 13:26
bonjour !
Si ton souci est résolu mets le message en "résolu" avec la roue dentée en haut du message
Merci
0