.net combobox affecter valeur suite selection
sebcbien81
Messages postés
17
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
je developpe sous visual express 2010 en vb.net (je débute).
j'ai une form qui contient une combobox me permettant de sélectionner un pays parmi la liste proposée :
exemple : Allemagne, Angleterre, Japon...(soit plus de 220 pays)
La pays selectionné me permettra de renvoyer un code pays correspondant :
exemple : "DE" pour "Allemagne"
J'ai déja pensé à If ou Select Case mais c'est long à coder car on doit taper les conditions pour chaque pays.
j'aurais souhaité coller dans mon code directement les correspondances comme présentées ci dessous et y faire référence par un code mais je ne sais pas comment faire :
Allemagne = DE
Angleterre = UK
Espagne = ES
...
D'avance merci
je developpe sous visual express 2010 en vb.net (je débute).
j'ai une form qui contient une combobox me permettant de sélectionner un pays parmi la liste proposée :
exemple : Allemagne, Angleterre, Japon...(soit plus de 220 pays)
La pays selectionné me permettra de renvoyer un code pays correspondant :
exemple : "DE" pour "Allemagne"
J'ai déja pensé à If ou Select Case mais c'est long à coder car on doit taper les conditions pour chaque pays.
j'aurais souhaité coller dans mon code directement les correspondances comme présentées ci dessous et y faire référence par un code mais je ne sais pas comment faire :
Allemagne = DE
Angleterre = UK
Espagne = ES
...
D'avance merci
A voir également:
- Youppie.net
- Net framework 2.0 - Télécharger - Divers Utilitaires
- Paint net - Télécharger - Dessin & Illustration
- Net framework 4.0 - Télécharger - Divers Utilitaires
- .Net runtime optimization service ✓ - Forum Windows 8 / 8.1
- L'indice n'appartient pas à la sélection - Forum VB / VBA
2 réponses
Lu'
Tu peut essayer de faire un tableau de correspondance.
Tu créer une table pays
Dim pays as string(DE,FR,UK,...)
Dim pays_selectionner as string
Ensuite tu test la valeur de ta combo
pays_selectionner = pays(combobox.Items)
Essaye pour voir
Tu peut essayer de faire un tableau de correspondance.
Tu créer une table pays
Dim pays as string(DE,FR,UK,...)
Dim pays_selectionner as string
Ensuite tu test la valeur de ta combo
pays_selectionner = pays(combobox.Items)
Essaye pour voir
borisdu
Messages postés
1939
Statut
Membre
230
Le plus simple serait de passer par une Base de donnée
Bonjour,
Tant qu'à faire, pourquoi ne pas bien faire ?
Enfin si le travail ne t'effrait pas, il y a l'option de créer
une ComboBox multi-colonnes dans laquelle tu pourra
insérer ton code de Pays, il sera de ce fait, facilement
récupérable lors de la sélection.
Voici ici pour la fabrication :
https://olsimare.developpez.com/articles/vbnet/combobox/multicolumncombobox/
Cdt
Lupin
Tant qu'à faire, pourquoi ne pas bien faire ?
Enfin si le travail ne t'effrait pas, il y a l'option de créer
une ComboBox multi-colonnes dans laquelle tu pourra
insérer ton code de Pays, il sera de ce fait, facilement
récupérable lors de la sélection.
Voici ici pour la fabrication :
https://olsimare.developpez.com/articles/vbnet/combobox/multicolumncombobox/
Cdt
Lupin
re:
Je viens de tester à l'instant sous .NET 2008
et il ne te sera pas nécessaire de dérivé le combobox standard.
tu pourras jouer avec la propriété [ValueMember] versus la propriété [DisplayMember].
Avec cette option, tu devrais résoudre facilement.
Cdt
Lupin
Je viens de tester à l'instant sous .NET 2008
et il ne te sera pas nécessaire de dérivé le combobox standard.
tu pourras jouer avec la propriété [ValueMember] versus la propriété [DisplayMember].
' Constructeur du formulaire
Public Sub New()
' Cet appel est requis par le Concepteur Windows Form.
InitializeComponent()
' Ajoutez une initialisation quelconque après l'appel InitializeComponent().
Dim dt As New DataTable
dt.Columns.Add("C1")
dt.Columns.Add("C2")
dt.Columns.Add("C3")
dt.Rows.Add("")
dt.Rows.Add("ID1", "PasAffiché1", "Affiché1")
dt.Rows.Add("ID2", "PasAffiché2", "Affiché2")
dt.Rows.Add("ID3", "PasAffiché3", "Affiché3")
dt.Rows.Add("ID4", "PasAffiché4", "Affiché4")
Me.cbx_Perso.DataSource = dt
Me.cbx_Perso.ValueMember = "C1"
Me.cbx_Perso.DisplayMember = "C3"
Me.cbx_Perso.DropDownStyle = ComboBoxStyle.DropDown
End Sub
'
' Évènement du combobox
Private Sub cbx_Perso_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbx_Perso.SelectedIndexChanged
Dim strTexte As New System.Text.StringBuilder
Dim dv As DataRowView = CType(Me.cbx_Perso.SelectedItem, DataRowView)
strTexte.AppendLine("Valeur affichée du combo = " & Me.cbx_Perso.Text)
strTexte.AppendLine("Valeur réelle du combo = " & Me.cbx_Perso.SelectedValue.ToString())
strTexte.AppendLine("Objet selectionnée du combo = " & Me.cbx_Perso.SelectedItem.ToString)
strTexte.AppendLine("Contenu : Col1 = " & dv(0).ToString & " - Col2 = " & dv(1).ToString & " - Col3 = " & dv(2).ToString)
MessageBox.Show(strTexte.ToString)
End Sub
'
Avec cette option, tu devrais résoudre facilement.
Cdt
Lupin