none
Ajouter balises span dans BulletedList RRS feed

  • Question

  • Bonjour à tous,

    je rempli dynamiquement depuis le code behind une liste (BulletedList). Je souhaiterais ajouter en plus une balise <span>xxx</span> à la fin de chaque <li>.

    de façon à avoir ceci: 

    <ul>
    	<li>
    	<a href="#">
    	   <span >42</span>
    	</a>
           </li>
    </ul>

    Mon code HTML est le suivant:

    <asp:BulletedList ID="CategoryItems" class="CategoryItems"
                                    BulletStyle="Circle"
                                    DisplayMode="HyperLink"
                                    runat="server">
                                </asp:BulletedList>

    et code behind

    foreach (Category cat in categoryList)
                {
                    list = new ListItem(cat.CategoryName, "~/Default.aspx?IdCategory=" + cat.IdCategory );
                    CategoryItems.Items.Add(list);
                }

    Comment puis je faire?

    Merci pour votre aide

    jeudi 17 juillet 2014 06:25

Réponses

  • Bonjour,

    j'ai finalement utilisé un Repeater comme proposé.

    Voici ce que cela donne :

    <ul class="list-group">
            <asp:Repeater runat="server" ID="ManageCategory">
                <ItemTemplate>
                    <li class="list-group-item">
                        <a href="../ManageCategories.aspx?IdCategory=<%#Eval("Id").ToString() %>">
                            <img src="/content/pen_16x16.png" alt="Edit" />
                        </a>
                        &nbsp;
                        <%#DataBinder.Eval(Container.DataItem, "CategoryName") %>
                        <span class="badge-check">
                            <input id="chkIsActive" type="checkbox" class="chkIsActive" name="IsActive" <%# Convert.ToBoolean(Eval("IsActif")) ? "checked" : "" %> data-idcategorie='<%#Eval("Id").ToString() %>' />
                        </span>
                    </li>
                </ItemTemplate>
            </asp:Repeater>
     </ul>

    Après différents essais, c'est effectivement la solution la plus simple.

    En espérant que cela puisse en aider d'autres.

    Encore merci pour votre aide.

    • Marqué comme réponse Aurel Bera lundi 11 août 2014 06:38
    dimanche 10 août 2014 13:17
  • Bonjour
    De toutes les options possibles, vous avez choisi celle qui fait les choses impossibles :

    1. Est que c'est possible de ne pas créer les items à partir de CodeBehind et utiliser des itemTemplates?

    2. Sinon pouvez-vous changer le BulletList dans un Repeater qui expose ItemDataBound pour modifier les ListItems ?
    Voir cet exemple : Customized bulleted list items in ASP.NET

    Bien cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    • Marqué comme réponse Aurel Bera jeudi 24 juillet 2014 08:09
    vendredi 18 juillet 2014 07:44

Toutes les réponses

  • Bonjour
    De toutes les options possibles, vous avez choisi celle qui fait les choses impossibles :

    1. Est que c'est possible de ne pas créer les items à partir de CodeBehind et utiliser des itemTemplates?

    2. Sinon pouvez-vous changer le BulletList dans un Repeater qui expose ItemDataBound pour modifier les ListItems ?
    Voir cet exemple : Customized bulleted list items in ASP.NET

    Bien cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    • Marqué comme réponse Aurel Bera jeudi 24 juillet 2014 08:09
    vendredi 18 juillet 2014 07:44
  • Bonjour,

    merci pour votre aide, je vais effectivement essayer d'une autre façon.

    Merci

    vendredi 18 juillet 2014 16:22
  • Bonjour

    Un petit retour SVP?

    Merci!

    Bien cordialement,


    Aurel BERA, MSFT
    MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
    S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.

    mercredi 23 juillet 2014 10:45
  • Bonjour,

    j'ai finalement utilisé un Repeater comme proposé.

    Voici ce que cela donne :

    <ul class="list-group">
            <asp:Repeater runat="server" ID="ManageCategory">
                <ItemTemplate>
                    <li class="list-group-item">
                        <a href="../ManageCategories.aspx?IdCategory=<%#Eval("Id").ToString() %>">
                            <img src="/content/pen_16x16.png" alt="Edit" />
                        </a>
                        &nbsp;
                        <%#DataBinder.Eval(Container.DataItem, "CategoryName") %>
                        <span class="badge-check">
                            <input id="chkIsActive" type="checkbox" class="chkIsActive" name="IsActive" <%# Convert.ToBoolean(Eval("IsActif")) ? "checked" : "" %> data-idcategorie='<%#Eval("Id").ToString() %>' />
                        </span>
                    </li>
                </ItemTemplate>
            </asp:Repeater>
     </ul>

    Après différents essais, c'est effectivement la solution la plus simple.

    En espérant que cela puisse en aider d'autres.

    Encore merci pour votre aide.

    • Marqué comme réponse Aurel Bera lundi 11 août 2014 06:38
    dimanche 10 août 2014 13:17