Bonjour, j'ai un probleme vraiment simple mais je suis incapable de figurer comment le regler.
J'explique, j'ai 3 tables nommer; "Auto, Legumes, Films". Je fait une function que lorsque le "SelectedItem" de mon Combobox change alors le nom du
SelectedItem est passer a une function.
Par la suite la fonction utilise le nom du SelectedItem pour afficher la table correspondante, exemple:SelectedItem est "Auto" donc la table attribuer sera "auto()".
Les 3 items de mon Combobox sont identiques au noms de mes tables.
Ce que j'essaie de faire est, exemple, SelectedItem=Auto() donc passer en parametre de type String a ma function afficheChoix() qui va ensuite entrer dans une boucle
"For" pour afficher les elements contenu dans auto() et les renvoyers dans un ListBox.
Mon probleme: Je ne sais pas comment faire en sorte que le selecteditem de combobox renvoyer a ma function devienne le nom de la table qui lui correspond, donc
pour le moment ma function essaie de travailler avec un type string et non pas ma table, j'espere que je suis claire.
Je sais comment faire cela en JavaScript mais pas certain en VB.NET. Je fonctionnais avec un "Select Case" avant de me decider a faire une function, j'ai
voulu faire cela pour eliminer une repetition inutile du code(dans le case).
Merci d'avance!
Code ou j'appel ma function:
------------------------------------------------------------------------------------------
Code:
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbchoix.SelectedIndexChanged
Dim s As String
s = cbchoix.SelectedItem
afficheListe(s)
End Sub
------------------------------------------------------------------------------------------
Le Code actuel de ma function
------------------------------------------------------------------------------------------
Code:
Private Sub afficheListe(ByRef listeChoix As String)
Dim Auto() As String = {"Firebird", "Mustang", "Charger", "Challenger", "Corvette"}
Dim Legumes() As String = {"Carotte", "Navet", "Radis", "Choux Fleur", "Pomme de Terre"}
Dim Films() As String = {"Evil Dead", "Brain Dead", "Fredy", "Jason", "Resident Evil"}
Dim n As Integer
liste.Items.Clear()
For n = 0 To listeChoix.Count - 1
liste.Items.Add(listeChoix(n))
Next
End Sub
------------------------------------------------------------------------------------------
EDIT(Vieu "Select Case" Code):
------------------------------------------------------------------------------------------
Code:
'Dim auto() As String = {"Firebird", "Mustang", "Charger", "Challenger", "Corvette"}
'Dim legumes() As String = {"Carotte", "Navet", "Radis", "Choux Fleur", "Pomme de Terre"}
'Dim films() As String = {"Evil Dead", "Brain Dead", "Fredy", "Jason", "Resident Evil"}
'Dim s As String
'Dim n As Integer = 0
's = cbchoix.SelectedItem
'Select Case s
' Case "Auto"
' liste.Items.Clear()
' For n = 0 To auto.Count - 1
' liste.Items.Add(auto(n))
' Next
' Case "Légumes"
' liste.Items.Clear()
' For n = 0 To legumes.Count - 1
' liste.Items.Add(legumes(n))
' Next
' Case "Films"
' liste.Items.Clear()
' For n = 0 To legumes.Count - 1
' liste.Items.Add(films(n))
' Next
'End Select
------------------------------------------------------------------------------------------