Sélection des entrées d'1 combobox suivant le radiobuttin sélectionné

Résolu
pOusSinUs Messages postés 38 Date d'inscription vendredi 29 juin 2007 Statut Membre Dernière intervention 2 août 2007 - 5 juil. 2007 à 12:13
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011 - 5 juil. 2007 à 18:30
Salut à tous, quelqu'un pourait-il me donner son avis sur ce code. J'essaie d'effectuer une opération suivant le choix de la ComboBox et suivant le choix d'un RadioButton sélectionné précédement.
Je dois tapper dans un annuaire LDAP suivant le choix;

Private
Sub CbBox2_SelectedIndexChanged(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles CbBox2.SelectedIndexChanged

If RadioBtn1.Checked
Then

Select
Case CbBox1.Items.Item

Case CbBox1.Items(
"toto")

'code effectué si expression=valeur1

Case CbBox1.Items(
"titi")

'code effectué si expression=valeur

Case CbBox1.Items(
"tata")

'code effectué si expression=valeur3

End
Select

End
If

If RadioBtn2.Checked
Then

Select
Case CbBox1.Items.Item

Case CbBox1.Items(
"sasa")

'code effectué si expression=valeur1

Case CbBox1.Items(
"sisi")

'code effectué si expression=valeur2

End
Select

End
If

End
Sub

Merci à tous

5 réponses

TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
5 juil. 2007 à 13:26
Méthode pedagogique :

recupérer la ligne qui pose pb souligné par le compilateur :
SelectCase CbBox1.Items.Item

ensuite se demander de quoi il s'agit :
CbBox1 <= = ComboBox
donc cherche dans l'aide MSDN la Classe ComboBox :
www.msdn.com et tapper "ComboBox Classe" par exemple et choisir dans la liste des resultat le bon :
http://search.msdn.microsoft.com/search/Default.aspx?brand=msdn&query=Combobox+Classe

le voici :
Classe ComboBox

Représente
un contrôle de zone de liste déroulante Windows. Pour obtenir une liste
de tous les membres de ce type, consultez Membres ComboBox . System.Object

http://msdn.microsoft.com/library/FRE/cpref/html/frlrfsystemwindowsformscomboboxclasstopic.asp

il s'agit bien souvent d'un page de description et d'exemple d'utilisation comme ici présent.
ensuite lire un peu de quoi il s'agit pour comprendre le context et si il s'agit bien de la bonne classe
puis regarder dans la colonne de gauche on appercoit : "Membres <nom de la classe>"
les membres corespondent au propriété accessible de cette classe pour nous developpeur .net donc : toutes les propriétés, méthodes, et evenements Public ET Protected (car ca devient accessible a l'heritage)
donc comme on va chercher a comprendre ce que fait la ligne

SelectCase CbBox1.Items.Item

Ben on va chercher le membre "Items" donc on clique sur "Membres" et ensuite on cherche "Items"

Items Obtient un objet représentant la collection des éléments contenus dans ce ComboBox.

la deja on pourrait avoir un doute nulle par sur cette ligne il parle de ligne en cour ou selectionné
mais bon pour te montrer que t'as vraiment fait fort on va aller plus loin on click dessus pour avoir le detail de ce que ca fait on arrive donc a cette page :
http://msdn.microsoft.com/library/fre/default.asp?url =/library/FRE/cpref/html/frlrfsystemwindowsformscomboboxclassitemstopic.asp

et la on remarque que ca renvoi un objet du type : ComboBox.ObjectCollection
arf pas cool c'est pas direct bon ba je clique dessus pour comprendre de quoi il s'agit puis sur membres dans la colonne de gauche et j'arrive a la liste des membre de al classe "ComboBox.ObjectCollection"
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformscomboboxobjectcollectionclasstopic.asp

et la dans la liste on va pouvoir chercher le ".Item" que tu a utiliser apres le ".Items" de ta classe combobox
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformscomboboxobjectcollectionclassitemtopic.asp

et la ... faut lire ... (ouai ca a l'air dur pour certain)
dessus je vois :
Public Overridable Default Property Item( _
ByVal index As Integer _
) As Object Implements IList.Item

c'est la declaration dans le framework de ce membre et comme c'est explicité il faut lui passer un argument ici appeler "index" de type "Integer" pour qu'il te renvoi ton item
donc on se rend bien compte que si tu lui passe "0" ca renvoi le premier item et si tu lui passe (CbBox.Items.Count-1) ca renvoi le dernier DONC ABSOLUMENT AUCUN RAPPORT avec la selection
par contre si je reviens sur la page de la liste des membres de la ComboBox et que je lit (ca prend 2 minute a tous casser) je trouve quelques  propriétés :
ValueMember.

a partir de la a toi de choisir celui qui convient le mieux

par exemple :

SelectCase CbBox1.SelectedItem.ToString().TLower()

Case "toto".ToLower()

Case "tata".ToLower()
...

EndSelect

J'ai rajouté les .ToLower() pour pas respécté la casse car "t" et "T" sont different si par exemple tu importe les condition de Case depuis des variable ect... enfin bon

avec un peu plus de serieux ce genre de question me fait halluciné il suffit de lire la doc pendant meme pas 5 minute pour trouver la reponse alors que la il a fallu qq heure pour que qqun reponde grandissez et faite un effort pour chercher on peux pas demander tout fait tout pret comme on veux, on cherche un truc on se casse le *** un minimum avant de demander a tout va

TeBeCo
3
pOusSinUs Messages postés 38 Date d'inscription vendredi 29 juin 2007 Statut Membre Dernière intervention 2 août 2007
5 juil. 2007 à 12:24
Voici l'erreur qui est générer par rapport à CbBox1.Items.Item

Argument non spécifié pour le paramètre 'index' de 'Public Overridable Default Property Item(index As Integer) As Object'. 
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
5 juil. 2007 à 13:11
Bonjour,

Sans rien connaître à VB.Net (par pur instinct, donc) :
Je dirais volontiers que ce qui n'est pas compris ici :
SelectCase CbBox1.Items.Item
est ce que je biens de mettre en rouge
et que M. VB.Net attend plutôt quelque chose du genre :
SelectCase CbBox1.Items(x)
où x représente l'index d'un article
0
pOusSinUs Messages postés 38 Date d'inscription vendredi 29 juin 2007 Statut Membre Dernière intervention 2 août 2007
5 juil. 2007 à 14:07
Désolé, mais je n'ai aucune notion de programmation et ce n'est pas facile de faire le tri et de comprendre comment ca fonctionne.

En tout cas jte remercie de l'attention que tu as porté à mon problème.


Merci pour ton astuce sur la casse.


 


Tchao
0

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

Posez votre question
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
5 juil. 2007 à 18:30
d'où ma réponse qui te permet je l'espère d'avoir plus d'autonomie :p

TeBeCo
0
Rejoignez-nous