Asp.net - comment faire une selection sur une valeur d'un item dans un dropdownlist

Soyez le premier à donner votre avis sur cette source.

Snippet vu 20 360 fois - Téléchargée 35 fois

Contenu du snippet

Le système de la sélection de l'élément actif d'un Menu déroulant sous ASP est différent de la gestion d'un DropDownList en ASP.NET.
En effet, un DDL est théoriquement autogéré, ainsi sélectionner la valeur active (typiquement parmis une liste de ville, sélectionner celle où on habite) ne peut pas se faire comme en ASP (if valueMenu=Mavaleur Then Response.Write SELECTED...).

Le principe est donc d'utiliser une fonction existant dans la classe du DropDownList : FindByValue.

Source / Exemple :


' Ici on a un DropDown déja alimenté par une liste de Ville par exemple
' On va donc chercher la Ville ou j'habite (référencé par un ID)
' MaVille = 12 (par exemple) sera donc l'ID N° de ma Table Ville qui est chargée dans le DDL

Dim b As ListItem = Dropdownlist.Items.FindByValue(MaVille)
 If Not b Is Nothing Then
   b.Selected = True
 Else
   Dropdownlist.Items.FindByValue(ValeurParDefaut).Selected = True
 End If
 
' La valeur par défaut est du type : Valeur=0 Text="Pas de Ville"

Conclusion :


Bon coding.

Romelard Fabrice (Alias F___)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
3
Date d'inscription
dimanche 6 août 2006
Statut
Membre
Dernière intervention
19 juin 2009

bonjour,
ce code est exactement ce que je souhaite faire
sauf que j'arrive pas à l'executer

Dim ddlsection As New DropDownList

Dim b As New ListItem

b = ddlSection.Items.FindByValue("Pharmacie")
If Not b Is Nothing Then
b.Selected = True
Else
ddlSection.Items.FindByValue(3).Selected = True
End If

Pharmacie est bien la valeur affiché dans ma dropdow,list et 3 sa valeur dans la base de donnée
alors je ne comprend pas pourquoi ca fonctionne pas
merci pour votre aide
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
4
Bonsoir,

Je ne comprends toujours pas votre question.
Qupoi qu'il en soit, chaque cas est spécifique, si vous devez ajouter une valeur en base plutôt que de choisir une valeur par défaut, il s'agit de votre stratégie.
Dans de nombreux cas, cette stratégie ne peux être imaginable pour des simples problématiques de garantie d'unicité des informations (voiture ~ voitures ou téléphone ~ telephone).
Ainsi si vous ajouter à chaque cas la données non trouvée dans la base, vous risquez de vous retrouver très rapidement avec une gestion des doublons à prendre en compte (ce qui est très lourd).

Cordialement
Romelard Fabrice
Messages postés
72
Date d'inscription
jeudi 30 novembre 2000
Statut
Membre
Dernière intervention
10 novembre 2008

Excusez moi d'avoir manquer de clarté. Je souhaitais simplement ajouter une valeur par défaut qui n'est pas dans ma base à la liste et non séléctionner une valeur par par défaut qui est déjà dans ma base...
Quel est la différence avec un DDL.selectedValue=MaValeur avec une valeur par défaut si ma valeur n'éxiste pas ?
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
4
Bonjour,

Désolé mais je ne comprends pas votre question.
Si la source ne correspond pas à ce que vous souhaitez, il ne s'agit que d'exemple, à vous donc de l'adapter.

Cordialement
Romelard Fabrice
Messages postés
72
Date d'inscription
jeudi 30 novembre 2000
Statut
Membre
Dernière intervention
10 novembre 2008

N'est il pas possible de ne pas toucher aux informations de la base et d'ajouter une valeur dans la liste seulement dans l'interface grace à du code ?
Plus propre non ?
Merci pour ce petit tricks.
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.