44 votes

SelectedValue vs SelectedItem.Value de DropDownList

Je travaille sur un vieux projet écrit puis patché par plusieurs personnes au fil des ans. À certains endroits, ils ont utilisé la propriété SelectedValue et à d'autres endroits, ils ont utilisé SelectedItem.Value.

Question : SelectedValue juste un sucre syntaxique pour SelectedItem.Value ou SelectedValue fonctionne-t-il différemment sous le capot ? Lequel est le plus performant ?

Modifier : SelectedItem.Text a été remplacé par SelectedItem.Value

9voto

Joshua Barker Points 169

Une distinction importante entre les deux (qui est visible dans le code Reflected) est que SelectedValue renverra une chaîne vide si rien n'est sélectionné, tandis que SelectedItem.Value lèvera une exception NullReference.

0voto

V_B Points 912

Dans la liste déroulante, il y a deux propriétés d'ajout d'élément.

1) Texte 2) valeur

Si vous souhaitez obtenir la propriété text, utilisez selecteditem.text

et si vous souhaitez sélectionner la propriété value, utilisez la propriété selectedvalue

Dans votre cas, je pense que la valeur et la propriété du texte sont les mêmes, donc peu importe si vous utilisez selectedvalue ou selecteditem.text

Si les deux sont différents, ils nous donnent des résultats différents

0voto

Bruce Allen Points 61

Soyez prudent en utilisant SelectedItem.Text... Si aucun élément n'est sélectionné, SelectedItem sera nul et SelectedItem.Text générera une exception de valeur nulle.

.NET aurait dû fournir une propriété SelectedText comme la propriété SelectedValue qui renvoie String.Empty lorsqu'il n'y a pas d'élément sélectionné.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X