Meilleure Technique pour Plusieurs Eval Champs dans Gridview ItemTemplate?
-
09-06-2019 - |
Question
Quelle est la meilleure façon d'utiliser plusieurs EVAL champs dans un GridView ItemTemplate?
Vous cherchez à avoir un certain contrôle sur le formatage de l'apparence ainsi que la mise en place de liens hypertextes/javascript etc.
La solution
Plus encore, l'OMI, est:
<%# String.Format("{0} - {1}", Eval("Name1"), Eval("Name2")) %>
Autres conseils
J'avais déjà utilisé ce (mauvais, je sais):
<%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%>
Résultat = 'Jean - Smith"
Mais juste de découvrir que je peux aussi mettre DEUX (ou plus) est évaluée comme dans le même lié aux données du groupe:
<%#Eval("Name1") & " - " & Eval("Name2")%>
Résultat = 'Jean - Smith"
Ou
<%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%>
Résultat = 'Prénom - Jean, Nom De Famille - Smith"
Eval et de se Lier à la fois le sucer.
Pourquoi se faire du bien grâce à la réflexion?Vous pouvez y accéder directement comme ceci:
((MyObject)Container.DataItem).MyProperty
C'est pas comme si l'objet ne vous est inconnu au moment de l'exécution.C'est mes deux cents, de toute façon.
J'ai une meilleure façon de faire la même chose...
<asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label>
.
<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>
Ici, les deux objets sont convertis en chaîne de la de les enchaîner.