Inline SI l'instruction pour ItemIndex asp:Repeater VB.NET
Je suis en train de faire une ligne SI l'instruction à l'intérieur d'un asp:Repeater de contrôle pour ajouter une classe à la première option, mais je ne peux pas tout à fait semblent le comprendre.
Fondamentalement le code que j'ai droit qui n'est pas un travail, mais devrait donner une idée de ce que je vais "essayer" de faire ressemble à ceci.
<asp:Repeater ID="rptrTabRepeater" runat="server">
<ItemTemplate>
<div class="tab <%= If Container.ItemIndex = 0 Then %>highlight<% End If%>">
'Other stuff here
</div>
</ItemTemplate>
</asp:Repeater>
J'ai essayé d'utiliser le OnItemDataBound
événement, mais le délégué de l'interface ne peut pas retourner de valeur. Si je vais faire quelque chose à partir d'un code-behind de la fonction vraiment, il serait juste besoin d'être un "echo" type de fonction dont je n'étais pas tout à fait sûr de savoir comment obtenir l'index de l'élément dans un code de fonction. Si je pouvais faire quelque chose inline comme mon exemple que ce serait la meilleure solution pour moi.
Toutes les meilleures solutions de bienvenue. Merci!
EDIT: L'erreur de compilation, j'obtiens est:
Compiler Error Message: BC30201: Expression expected.
OriginalL'auteur jaywon | 2010-08-13
Vous devez vous connecter pour publier un commentaire.
Avez-vous essayé quelque chose comme:
hey, vous aviez raison, la syntaxe est juste un peu hors. Nécessaire pour être
<%# IIf ( Container.ItemIndex = 0, "highlight", "")%>
. Avis manquantes signe de livre dans votre exemple. Si vous mettez à jour votre post, je vais vérifier vous off sur la réponse. Merci!Cette sortie
<div class="tab<%# IIf ( Container.ItemIndex = 0, "highlight", "")%>">
dans les dom quand je l'ai essayé :SCertes, vous avez besoin de déplacer l'onglet" à l'intérieur de la sortie ainsi,
<%# IIf ( Container.ItemIndex = 0, "tabhighlight", "tab")%>
OriginalL'auteur Ed Schembor